|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
程序本身寻找都没有问题,但是当把这些字符写到文件时报错:
- Traceback (most recent call last):
- File "D:/Python_Pro/FishC30.py", line 33, in <module>
- Write2txt(l)
- File "D:/Python_Pro/FishC30.py", line 19, in Write2txt
- f .writelines(l)
- UnicodeEncodeError: 'gbk' codec can't encode character '\u30fb' in position 94: illegal multibyte sequence
复制代码
有的目录可以,有的不行,应该是和字符有关,程序如下,求指导~~
- import os
-
- t = ('.mp4','.avi','.rmvb')
- l = []
- def FindAV(path):
- for x in os.listdir(path): #列出当前路径中的所有项进行查找
- path1 = os.path.join(path,x) #得到文件的全路径!这里必须新建一个path1,而不能直接用path
- if(os.path.isdir(path1)): #如果遇到文件夹继续查找
- FindAV(path1 ) #继续找
- else:
- if os.path.splitext(path1)[1] in t:
- l.append(path1)
- print(path1)
- def Write2txt(l):
- f = open(r'C:\Users\Administrator\Desktop\song.txt','w')
- f .writelines(l)
- f.close()
- str1 = input('请输入一个绝对路径的目录:')
- #str1 = r'F:\1'
-
- if(not os.path.exists(str1)):
- print('不存在该路径(文件)')
- elif(os.path.isfile(str1)):
- print('此为一个文件,而非目录,请输入一个目录')
- FindAV(str1)
- Write2txt(l)
复制代码 |
|