python写入文本文件

file = open('newfile.log', 'w')
file.write('hello file\n\n')
file.writelines([str])
file.close()

#或者
with open('newfile.log', 'w',encoding="utf-8") as :f
    f.write("hello")

读文本

 with open(fname,'r',encoding="utf-8") as f:     
     jsn=json.load(f)  #转为json
     print(jsn)
     lines=f.readlines() #读取全部行为数组
     print(lines)
     line=f.readline() #读取一行
     print(line)

#读取全部内容
_html = ''
with open(dist_fname,'r',encoding="utf-8") as f:
    _html=f.read()
print(_html)
  • 参数:
    r 只读模式打开文件
    rb 以二进制格式、采用只读模式打开文件,读文件内容的指针位于文件的开头,一般用于非文本文件,如图片文件、音频文件、文件传输等。
    r+ 打开文件后,既可以从头读取文件内容,可以在文件末尾追加写入内容
    rb+ 以二进制格式、采用读写模式打开文件,读写文件的指针会放在文件的开头,通常针对非文本文件(如音频文件)。
    w 以只写模式打开文件,若该文件存在,打开时会清空文件中原有的内容。 若文件存在,会清空其原有内容(覆盖文件);不存在,则创建新文件。
    wb 以二进制格式、只写模式打开文件,一般用于非文本文件(如音频文件)
    w+ 打开文件后,会对原有内容进行清空,并对该文件有读写权限。
    wb+ 以二进制格式、读写模式打开文件,一般用于非文本文件
    a 以追加模式打开一个文件,对文件只有写入权限,如果文件已经存在,文件指针将放在文件的末尾(即新写入内容会位于已有内容之后);反之,则会创建新文件。
    ab 以二进制格式打开文件,并采用追加模式,对文件只有写权限。如果该文件已存在,文件指针位于文件末尾(新写入文件会位于已有内容之后);反之,则创建新文件。
    a+ 以读写模式打开文件;如果文件存在,文件指针放在文件的末尾(新写入文件会位于已有内容之后);反之,则创建新文件。
    ab+ 以二进制模式打开文件,并采用追加模式,对文件具有读写权限,如果文件存在,则文件指针位于文件的末尾(新写入文件会位于已有内容之后);反之,则创建新文件。

  • encode
    utf-8 常用
    gbk 部分中文

文件指针

#打印当前文件指针的字节位置
print(f.tell())
#将文件光标移动到指定的位置
print(f.seek(0))
#判断f的文件指针是否是可移动的
print(f.seekable())