杨东明 发表于 2021-6-29 20:29:54

请问为啥这儿找不到文件?print 为啥这儿不打印了。。

import fileinput
import os
#os.chdir('D:\\')
#print(os.getcwd())
def process(line):
    return (line.rstrip() + 'line')
for line in fileinput.input(['123.txt','234.txt'],inplace=True):
    print(process(line))

不能懒 发表于 2021-6-29 20:29:55

inplace=True:不创建新的对象,直接对原始对象进行修改;
inplace=False:对数据进行修改,创建并返回新的对象承载其修改结果

Twilight6 发表于 2021-6-29 20:29:55

杨东明 发表于 2021-6-29 20:31
报错是: Traceback (most recent call last):
File "D:/python project/5.py", line 12, in
    for...



重新确认下代码是不是和文件在同一个目录下,我这里代码测试正常

杨东明 发表于 2021-6-29 20:31:04

报错是: Traceback (most recent call last):
File "D:/python project/5.py", line 12, in <module>
    for line in fileinput.input(['123.txt','234.txt'],inplace=True):
File "D:\python3\lib\fileinput.py", line 252, in __next__
    line = self._readline()
File "D:\python3\lib\fileinput.py", line 339, in _readline
    os.rename(self._filename, self._backupfilename)
FileNotFoundError: 系统找不到指定的文件。: '123.txt' -> '123.txt.bak'


文件是有的,还有就是print这儿,加入我把inplace去掉print就正常,加上为啥就不打印了,

杨东明 发表于 2021-6-29 20:54:06

不能懒 发表于 2021-6-29 20:29
inplace=True:不创建新的对象,直接对原始对象进行修改;
inplace=False:对数据进行修改,创建并返回新 ...

感谢{:9_231:}

杨东明 发表于 2021-6-29 20:54:51

Twilight6 发表于 2021-6-29 20:43
重新确认下代码是不是和文件在同一个目录下,我这里代码测试正常

谢谢,我没注意os.chdir()前面加了#{:9_233:}
页: [1]
查看完整版本: 请问为啥这儿找不到文件?print 为啥这儿不打印了。。