最近遇到了write与writelines,总是分不清楚,百度好久才找到答案,记录下来。
1、 file.write(str)需要传入一个字符串做为参数,否则会报错。
write( "字符串")
1 with open('20200222.txt','w') as fo: 2 fo.write([‘a','b','c']) #错误提示:TypeError: write() argument must be str, not list
2、 file.writelines(sequence)可以有两种:字符串和字符序列,传入字符序列时,如果需要换行,则每个序列元素末尾需要有“ ”换行符才能达到所要输出的格式要求。
注意 :writelines必须传入的是字符序列,不能是数字序列
writelines( "字符串" ) writelines( "字符序列" )
1 list1 = ['a','1',3,4,5] 2 with open('20200222.txt','w') as fo: 3 fo.writelines(list1) #错误提示:TypeError: write() argument must be str, not int
1 list1 = ['a','1','3','4','5'] 2 with open('20200222.txt','w') as fo: 3 fo.writelines(list1) #正确传入参数!
1 with open('20200222.txt','w') as fo: 2 fo.writelines('今天是2020年2月22日星期六, ') #注意,有个换行符,需要显式的加入换行符。