每天Python学习--open,pow,print

  • open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None):打开 file 并返回对应的 file object。如果该文件不能打开,则触发 OSError。使用open()函数记得在文件操作结束时调用close()函数
参数:
  1. file:给定一个文件的路径,使用绝对路径(完整的系统路径如:'E:/openCV_codes/')或者相对路径(工作环境所在的路径)
  2. mode:打开文件的模式,默认值是'r'只读,常用的还有以下几种方式
模式 描述
'r' 只读,文件的指针放在文件的开头
'w' 只写,若文件已经打开,则从头开始编辑,原有内容会被删除,如果文件不存在,则会创建新文件
'a' 对打开的文件进行追加操作,若文件已存在,则指针放在文件的末尾,新内容会在文件末尾追加,若不存在则会创建文件进行编辑
'x' 防止文件重复创建,新建一个文件,若存在该文件则会报错
'b' 二进制模式
'+' 可读可写

可对上述模式进行组合,比如'wb':即以二进制格式打开一个文件只用于写操作,若文件已打开则会删除原有内容,从头开始编辑,若文件不存在则会创建新文件,常用于图片文件编辑;'ab+':以二进制格式在文件末尾进行编辑,若文件存在,指针会放在文件末尾,不存在则创建新文件,可读可写

  1. buffering:设置缓存策略,0为关闭缓冲空间(仅在二进制模式下可用该模式),1行缓冲,在文本模式下,>1的整数表示在以固定大小的块来缓冲(以字节为单位),默认为-1表示按系统默认大小来缓冲
import io
print(io.DEFAULT_BUFFER_SIZE)#查看系统默认缓冲空间大小,通常为4096或者8192字节
  1. encoding:解码或者编码的格式,只在文本模式下使用,常用'utf-8'
  2. errors:编码或者解码错误的处理方式,不能在二进制模式下使用
  3. newline:用来控制换行,候选项:None,'\r','\n'和'\r\n',仅在文本文件中使用
  4. closefd:设置为True以保证文件关闭时底层文件描述符处于关闭状态
    参数比较多,但常用参数比较少,习惯方式如下,一次读取一行来遍历文本文件:
#使用with...as..方式操作文件,在操作完成会自行关闭
with open('test_lines.txt') as f:
    line = f.readline()
    while line:
        print(line)
        line=f.readline()
#f.read([size])读取指定长度的内容,size未指定则会返回整个文件
#f.readlines([size]):读取size行的内容,未指定会读取全部行
#f.tell()返回当前文件指针的位置(到文件头的比特数)
#f.seek(偏移量,[起始位置]):偏移量单位为bit,可正可负,起始位置:0开头,1当前位置,2文件末尾,**非'b'模式打开文件只允许从头开始计算相对位置,从文件尾计算会报错**

参考资源
Python3 open函数
with...as...用法

  • pow(x,y,[z]):返回x的y次方,当z存在时,返回x的y次方对z求余,相当于x∧y%z,两个参数时相当于x∧y,参数必须为整数,当第二个参数为负数,所有的参数会被转换为浮点数,输出浮点数结果,且在第二个参数为负数情况下,第三个参数须省略

  • print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False):将objects打印到file指定的文本流当中,以sep分隔,并且在末尾加上end,sep和end必须是字符串,若没有给出objects,则print将打印end

print(1,2,3,sep='-')#1-2-3
list_a=[1,2,3,4,5]
for i in range(len(list_a)):
    print(list_a[i],end='-')
#1-2-3-4-5-

print函数总结

你可能感兴趣的:(每天Python学习--open,pow,print)