您现在的位置是:主页 > news > 做餐饮加盟的网站建设/企业营销策划书

做餐饮加盟的网站建设/企业营销策划书

admin2025/6/17 6:33:40news

简介做餐饮加盟的网站建设,企业营销策划书,电脑网页游戏排行,小说网站首页模板目录 """上节课复习: """今日内容: 追加内容 feek的应用 函数的介绍 函数定义的语法介绍 函数的定义与调用 # 1,无参函数 函数定义的三种方式 # 有参函数 # 空函数,函数体内代码是pass …

做餐饮加盟的网站建设,企业营销策划书,电脑网页游戏排行,小说网站首页模板目录 """上节课复习: """今日内容: 追加内容 feek的应用 函数的介绍 函数定义的语法介绍 函数的定义与调用 # 1,无参函数 函数定义的三种方式 # 有参函数 # 空函数,函数体内代码是pass …

目录

"""上节课复习:

"""今日内容:

追加内容

feek的应用

函数的介绍

函数定义的语法介绍

函数的定义与调用

# 1,无参函数

函数定义的三种方式

# 有参函数

# 空函数,函数体内代码是pass

# 三种定义方式各用在何处

# 1、无参函数的应用场景

# 2、有参函数的应用场景

# 3、空函数的应用场景

# 三、函数返回值

# 2、返回一个值:return 值

# 3、返回多个值:用逗号分隔开多个值,会被return返回成元组

# 二、调用函数

# 1、语句的形式:只加括号调用函数

# interactive()# add(1,2)

# 2、表达式形式:

# 3、函数调用可以当做参数

# 文件修改的两种方式

# 方式一:文本编辑采用的就是这种方式

# 方式二:word文档修改文件的方式


"""
上节课复习:


    x+
    b
      1、读写都是以bytes
      2、针对所有文件
      3、一定不能指定encoding

    with open('a.txt',mode='rb') as f:
        res=f.read()
        print(res) # bytes类型

        res.decode('utf-8')


    bytes=>二进制
        得到bytes类型的三种方式
        1、字符串编码之后的结果
            '上'.encode('utf-8')
            bytes('上',encoding='utf-8')

        2、b'必须是纯英文字符'

        3、b模式下打开文件,f.read()读出的内容


    f.readline()
    f.readlines() & f.read()
    with open('a.txt',mode='rt',encoding='utf-8') as f:
        for line in f:
            print(line)

        while True:
            # line=f.read(1024)
            line=f.readline()
            print(line)
            if len(line) == 0:
                break


    #f.seek(10,0)
    #f.seek(2,0)
    #f.seek(3,0)

    # f.seek(10,1)
    # f.seek(2,1) # 12
    # f.seek(3,1) # 15

    f.seek(-3,2)
    f.seek(-2,2)
    f.seek(-10,2)

    rb r+b


"""

"""
今日内容:


    1、f.seek的应用
        tail -f access.log程序讲解

2、文件修改的两种方式

    3、函数的基本使用
        先定义
            三种定义方式
        后调用
            三种调用方式

        返回值
            三种返回值的形式

4、函数参数

        一 形参与实参介绍
        二 形参与实参的具体使用
        2.1 位置参数
        2.2 关键字参数

2.3 默认参数

""

追加内容

with open("access.log","at",encoding="utf-8")as f:f.write("2022422 xx 转账200w\n")

feek的应用

import timewith open("access.log","rb")as f:# 现将指针跳到文件末尾,下面做耗内存# f.read() 这是一个错误的方法f.seek(0,2)  # 参照文件末尾移动0个字节,这样就跑到文件末尾:while True:line=f.readline()if len(line)==0:time.sleep(0.3)else:print(line.decode('utf-8'),end='')
# f.seek()应用先打开做一个监控系统,现在指针位置在文件末尾。追加模式写入数据后,检测到数据后,输出该数据内容。实时监控

函数的介绍

"""
1.什么是函数函数就相当于具备某一功能的工具函数的使用必须遵循一个原则先定义后调用
2.为什么要用函数1.组织结构不清晰,可读性差2.代码冗余3.可维护性,扩展性差
2.如何定义函数先定义三种定义方式后调用三种调用方式返回值三种返回值方式"""

函数定义的语法介绍

#1,先定义
# def 函数名(参数1,参数2):
#     """文档描述"""开源环境需要,给公司就简单就好
#     函数体
#     return 值


函数的定义与调用

# 1,无参函数


# def func():
#     print("haoaho")
#     print("好好")
# func()
# 定义函数发生的事情
# 1,申请内容空间保存函数体代码
# 2,将上述内存地址绑定函数名
# 3,定义函数阶段不会执行函数体代码,但会检测函数体语法

# 调用函数发生的事
# print(func)#<function func at 0x0000021E4F32F040>
# 1,通过函数名找到函数的内存地址
# 2,然后加括号就是触发函数体代码执行
# 实例一:
# x=111
# def bar():
#     print("from bar")
# def foo():
#     bar()
#     print(x)
#     print("from foo")
# foo()
# 实例二:
def foo():
    print("from foo")
    bar()
def bar():
    print("from bar")

foo()
# 定义阶段只检查代码是否符合语法规范,不执行代码,到foo()调用代码的时候,bar()已经有了内存地址,并且可以完成调用

函数定义的三种方式

# 有参函数


# def func(x,y):
#     print(x,y)
# func(1,2)

# 空函数,函数体内代码是pass


# def func(x,y):
#     pass

# 三种定义方式各用在何处


# 1、无参函数的应用场景


# def interactive():
#     name=input('username>>: ')
#     age=input('age>>: ')
#     gender=input('gender>>: ')
#     msg='名字:{} 年龄:{} 性别'.format(name,age,gender)
#     print(msg)
#
# interactive()
# interactive()
# interactive()
# interactive()

# 2、有参函数的应用场景


# 函数相当于一个工厂
# def add(x,y): # 参数-》原材料
#     # x=20
#     # y=30
#     res=x + y
#     # print(res)
#     return res # 返回值-》产品
#
# # add(10,2)
# res=add(20,30)
# print(res)

# 3、空函数的应用场景

# 构思代码,体系结构清晰

# def auth_user():
#     """user authentication function"""
#     pass
#
# def download_file():
#     """download file function"""
#     pass
#
# def upload_file():
#     """upload file function"""
#     pass
#
# def ls():
#     """list contents function"""
#     pass
#
# def cd():
#     """change directory"""
#     pass

# 三、函数返回值


# return是函数结束的标志,即函数体代码一旦运行到return会立刻
# 终止函数的运行,并且会将return后的值当做本次运行的结果返回:
# 1、返回None:函数体内没有return
#             return
#             return None
#


# 2、返回一个值:return 值


# def func():
#     return 10
#
# res=func()
# print(res)

# 3、返回多个值:用逗号分隔开多个值,会被return返回成元组


def func():
    return 10, 'aa', [1, 2]

res = func()
print(res, type(res))

# 二、调用函数


# 1、语句的形式:只加括号调用函数


# interactive()
# add(1,2)

# 2、表达式形式:


# def add(x,y): # 参数-》原材料
#     res=x + y
#     return res # 返回值-》产品


# 赋值表达式


# res=add(1,2)
# print(res)
# 数学表达式
# res=add(1,2)*10
# print(res)

# 3、函数调用可以当做参数


# res=add(add(1,2),10)
# print(res)


# 文件修改的两种方式


# 方式一:文本编辑采用的就是这种方式


# 实现思路:将文件内容发一次性全部读入内存,然后在内存中修改完毕后再覆盖写回原文件
# 优点: 在文件修改过程中同一份数据只有一份,硬盘空间没有浪费
# 缺点: 会过多地占用内存
# with open('c.txt',mode='rt',encoding='utf-8') as f:
#     res=f.read()
#     data=res.replace('alex','dsb')
#     print(data)
#
# with open('c.txt',mode='wt',encoding='utf-8') as f1:
#     f1.write(data)


# 方式二:word文档修改文件的方式


import os
# 实现思路:以读的方式打开原文件,以写的方式打开一个临时文件,一行行读取原文件内容,修改完后写入临时文件...,删掉原文件,将临时文件重命名原文件名
# 优点: 不会占用过多的内存
# 缺点: 在文件修改过程中同一份数据存了两份
with open('c.txt', mode='rt', encoding='utf-8') as f, \
        open('.c.txt.swap', mode='wt', encoding='utf-8') as f1:
    for line in f:
        f1.write(line.replace('alex', 'dsb'))#这个数据现在在内存中,一行一行的往硬盘中传入数据,减少内存消耗。
        #同一时间在内存中只有一行内容

os.remove('c.txt')#删掉源文件
os.rename('.c.txt.swap', 'c.txt')#改成源文件的名字


f = open('a.txt')
res = f.read()
print(res)