【发布时间】:2018-08-15 11:41:01
【问题描述】:
在将另一个文件的内容附加到列表(水果)之后,并且在将其写入 txt 文件“fruit_salad.txt”之前,我正在尝试对列表(水果)进行排序。
我遇到的问题是,一旦我写了“fruit.sort()”,它就无法识别输出。
对导致这种情况的列表进行排序,我在做什么?
提前谢谢你。
---代码---
try:
f = open("fruit.txt", mode='r', encoding='utf-8')
fruit = f.readlines()
print(fruit, "\n")
f1 = open("more_fruit.txt", mode="r", encoding='utf-8')
fruit.append(f1.readlines())
print(fruit)
# fruit.sort() # WITHOUT THIS LINE IT WORKS FINE
output = open("fruit_salad.txt", mode='w', encoding='utf-8')
for line in fruit:
output.writelines(line)
except (FileNotFoundError, IOError):
print("File Not Found!!")
finally:
f.close()
f1.close()
output.close()
--输出--
['pear\n', 'apple\n', 'orange \n', 'mandarin\n', 'watermelon\n',
'pomegranate\n', 'lemon\n', 'pineapple\n']
['pear\n', 'apple\n', 'orange \n', 'mandarin\n', 'watermelon\n', 'pomegranate\n', 'lemon\n', 'pineapple\n', ['banana\n', 'raspberry\n', 'blueberry\n', 'lime\n', 'blackberry\n', 'cherry\n', 'grape']]
程序“python.exe”已退出,代码为 0 (0x0)。
错误输出
在处理上述异常的过程中,又发生了一个异常:
Traceback (most recent call last):
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\ptvsd_launcher.py", line 111, in <module>
vspd.debug(filename, port_num, debug_id, debug_options, run_as)
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\debugger.py", line 36, in debug
run(address, filename, *args, **kwargs)
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\_main.py", line 47, in run_file
run(argv, addr, **kwargs)
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\_main.py", line 98, in _run
_pydevd.main()
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\pydevd\pydevd.py", line 1628, in main
globals = debugger.run(setup['file'], None, None, is_module)
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\pydevd\pydevd.py", line 1035, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\Python\Core\Packages\ptvsd\pydevd\_pydev_imps\_pydev_execfile.py", line 25, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:\Users\micha\source\repos\PythonFileManagement\PythonFileManagement\PythonFileManagement.py", line 24, in <module>
output.close()
NameError: name 'output' is not defined
【问题讨论】:
-
我无法重现您发布的那个错误。请提供minimal reproducible example。
标签: python python-3.x