深邃海绵 发表于 2021-7-26 16:36:29

这代码不知道哪里错了

本帖最后由 深邃海绵 于 2021-7-26 17:51 编辑

def file_view(file_name, line_num):
    print('\n文件%s的前%s的内容如下:\n' % (file_name, line_num))
    f = open(file_name)
    for i in range(int(line_num)):
      print(f.readline(), end= '')

    f.close()

file_name = input(r'请输入要打开的文件(C:\\test.txt):')
line_num = input('请输入需要显示该文件前几行:')
file_view(file_name, line_num)




结果



请输入要打开的文件(C:\\test.txt):D:\\ee.txt
请输入需要显示该文件前几行:2

文件D:\\ee.txt的前2的内容如下:

Traceback (most recent call last):
File "C:\Users\休闲键\Desktop\PYTHON练习\文件2.py", line 11, in <module>
    file_view(file_name, line_num)
File "C:\Users\休闲键\Desktop\PYTHON练习\文件2.py", line 5, in file_view
    print(f.readline(), end= '')
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 66: illegal multibyte sequence
>>> 请问哪里搞错了,open()我填的地址也是对的

逃兵 发表于 2021-7-26 16:37:53

复制代码
不要发图片
而且本地图片根本看不到

青出于蓝 发表于 2021-7-26 16:49:51

https://fishc.com.cn/thread-168190-1-1.html
这样发图

suchocolate 发表于 2021-7-26 18:07:20

f = open(file_name, encoding='utf-8')

叼辣条闯世界 发表于 2021-7-26 20:24:48

f = open(file_name, encoding='utf8')
加个utf8编码试试看
页: [1]
查看完整版本: 这代码不知道哪里错了