关于把列表中的内容 写入.txt文档中的问题
import osname1 = str(input('请输入目录'))
list1 = list(os.walk(name1))
list2 = []
lentgh1 =len(list1)
for i in range(lentgh1):
lentgh2 = len(list1)
for j in range(1,lentgh2):
for k in list1:
(x,y)=os.path.splitext(k)
if y == '.mp4' or y == '.avi':
name =name1 +'\ '+k + '\n'
list2.append(name)
f1 = open('mp4.txt','w')
f1.writelines(list2)
f1.close()
如题
我运行完就显示
Traceback (most recent call last):
File "D:/python/jichu/查找文件格式.py", line 15, in <module>
f1.writelines(list2)
UnicodeEncodeError: 'gbk' codec can't encode character '\xe2' in position 30: illegal multibyte sequence
只有列表中的第一个字符串被写入 是不是以为列表太大了? 可能是路径或文件名有 Python 识别不了的字符,我试了试你的代码没问题。 zltzlt 发表于 2019-11-20 19:40
可能是路径或文件名有 Python 识别不了的字符,我试了试你的代码没问题。
['D:\\\\迅雷下载\\ 无主之作.Werk.ohne.Autor.2018.BD1080P.X264.AAC.German.CHS.mp4', "D:\\\\迅雷下载\\ 杀人秘密.La.mort.dans.l'ame.2018.HD720P.X264.AAC.French.CHT.mp4", 'D:\\\\迅雷下载\\ 此房是我造.The.House.That.Jack.Built.2018.1080p.WEB-DL.X264.AAC.CHS-ENG.mp4', 'D:\\\\迅雷下载\\ 英国佬来了BD中英双字[飘花www.piaohua.com].mp4']
这个是要写入的列表里面有什么问题吗 试试这样:
import os
name1 = str(input('请输入目录'))
list1 = list(os.walk(name1))
list2 = []
lentgh1 =len(list1)
for i in range(lentgh1):
lentgh2 = len(list1)
for j in range(1,lentgh2):
for k in list1:
(x,y)=os.path.splitext(k)
if y == '.mp4' or y == '.avi':
name =name1 +'\ '+k + '\n'
list2.append(name)
f1 = open('mp4.txt','w', encoding='utf-8')
f1.writelines(list2)
f1.close()
页:
[1]