|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码看了很多遍,一直出错,求帮助,谢谢!
代码:- import os
- def search(dir):
- list = os.listdir(os.curdir)
- for each in list:
- if each.split('.')[1] == 'py':
- lines = calc_code(each)
- def calc_code(file):
- lines = 0
- with open(file) as f:
- print('正在分析文件:%s ...' % file)
- for each_line in f:
- lines += 1
- return lines
- search(dir)
复制代码
报错原因:- Traceback (most recent call last):
- File "E:\python 3.6.1\exercise\1-9课\35e统计自己写的代码行数.py", line 20, in <module>
- search(dir)
- File "E:\python 3.6.1\exercise\1-9课\35e统计自己写的代码行数.py", line 10, in search
- lines = calc_code(each)
- File "E:\python 3.6.1\exercise\1-9课\35e统计自己写的代码行数.py", line 16, in calc_code
- for each_line in f:
- UnicodeDecodeError: 'gbk' codec can't decode byte 0xa0 in position 66: illegal multibyte sequence
复制代码
先试试这个,再不行,用下面的
- import os
- def search(dir):
- list = os.listdir(os.curdir)
- for each in list:
- if each.split('.')[1] == 'py':
- lines = calc_code(each)
- def calc_code(file):
- lines = 0
- with open(file, encoding = 'gbk') as f:
- print('正在分析文件:%s ...' % file)
- for each_line in f:
- lines += 1
- return lines
- search(dir)
复制代码
这个是备用
- import os
- def search(dir):
- list = os.listdir(os.curdir)
- for each in list:
- if each.split('.')[1] == 'py':
- lines = calc_code(each)
- def calc_code(file):
- lines = 0
- with open(file, encoding = 'utf-8') as f:
- print('正在分析文件:%s ...' % file)
- for each_line in f:
- lines += 1
- return lines
- search(dir)
复制代码
|
|