第29讲课后3题
为什么else那里注释掉的写法会输出空代码如下
def fun(star, end):
for i in range(star,end):
print (file_list, end = '')
file_name = input('请输入要打开的文件(C:\\test.txt):')
line = input ('请输入要显示的行数【格式如12:21 或:21 或 21: 】:')
file = open(file_name)
file_list = list(file)
(star, end) = line.split(':')
if star != '' and end != '':
star = int(star)
end = int (end)
fun(star, end)
elif star == '' and end != '':
star = 0
end = int(end)
fun(star, end)
elif star != '' and end == '':
star = int(star)
end = len(file_list)
fun(star, end)
else:
#print(file.read())
#为什么上边的这个不可以
star = 0
end = len(file_list)
fun(star, end)
file.close()
注释掉的话,就执行下一句,忽略本句了。 你想表达什么?注释掉就变成注释了啊,不会当成代码执行了呀.怎么会输出空? 白本羽 发表于 2021-5-8 12:26
你想表达什么?注释掉就变成注释了啊,不会当成代码执行了呀.怎么会输出空?
现在else后面没有注释掉的和已经注释掉的是两种写法,为什么注释掉的输出空,而没注释掉的可以正常输出 sxhqyxc 发表于 2021-5-10 10:31
现在else后面没有注释掉的和已经注释掉的是两种写法,为什么注释掉的输出空,而没注释掉的可以正常输出
else下面的 ‘ # ‘后面的代码不运行直接从 star = 0往后运行 sxhqyxc 发表于 2021-5-10 10:31
现在else后面没有注释掉的和已经注释掉的是两种写法,为什么注释掉的输出空,而没注释掉的可以正常输出
可能是指针问题,就是说你上一次执行完后,文件指针停在最后面,那么再一次读取的时候就没内容了,因为已经在最后面了
with open(r"E:\test\list2.txt",encoding = "utf-8") as file:
for each in file:
print(each)
print(file.read())
结果是
哒哒哒,啦啦啦,略略略
加个指针代码
with open(r"E:\test\list2.txt",encoding = "utf-8") as file:
for each in file:
print(each)
file.seek(0)
print(file.read())
输出结果
哒哒哒,啦啦啦,略略略
哒哒哒,啦啦啦,略略略 白本羽 发表于 2021-5-11 10:53
可能是指针问题,就是说你上一次执行完后,文件指针停在最后面,那么再一次读取的时候就没内容了,因为已经在 ...
谢谢 ,明白了 sxhqyxc 发表于 2021-5-11 10:55
谢谢 ,明白了
积分不够{:5_104:}加不了好友抱歉,您目前没有权限添加好友,点击这里查看权限 白本羽 发表于 2021-5-11 11:24
积分不够加不了好友
加个QQ问个问题644800918
页:
[1]