python基础之文件操作和函数

一、知识点

1.三元运算

a = 2
b = 3
val = 6 if a < b else 7
print(val)

2.文件读取

f = open(file='file.txt',mode='r',coding='utf-8')
data = f.read()
print(data)
f.close

要注意的是,存到硬盘上时是以何种编码存的,再从硬盘上读出来时,就必须以何种编码读,要不然就乱了
写文件用mode ='w',文件尾追加写;mode='a'

3.python3 执行代码的过程

  • 解释器找到代码文件,把代码字符串按文件头定义的编码加载到内存,转成unicode
  • 把代码字符串按照语法规则进行解释
  • 所有的变量字符都会以unicode编码声明

4.文件编解码规则:

5.智能检测文件数据编码:

chardet.detect(data)

6.函数定义

def sayhi():#函数名
    print("Hello, I'm nobody!")

sayhi() #调用函数

7.闭包

闭包即函数定义和函数表达式位于另一个函数的函数体内(嵌套函数)。闭包的意义:返回的函数对象,不仅仅是一个函数对象,在该函数外还包裹了一层作用域,这使得,该函数无论在何处调用,优先使用自己外层包裹的作用域。

8.装饰器

代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。

一个完整的decorator的写法如下:

import functools

def log(func):
    @functools.wraps(func)
    def wrapper(*args, **kw):
        print('call %s():' % func.__name__)
        return func(*args, **kw)
    return wrapper

或者针对带参数的decorator:

import functools

def log(text):
    def decorator(func):
        @functools.wraps(func)
        def wrapper(*args, **kw):
            print('%s %s():' % (text, func.__name__))
            return func(*args, **kw)
        return wrapper
    return decorator


猜你喜欢

转载自www.cnblogs.com/lurkerzhang/p/9992476.html
今日推荐