我如何将函数输出(与文件连接)写入此文件?我不能使用函数,它必须是字符串。当我在函数之前添加“ str”时,文件中的所有先前数据都会消失。
def date():
for num in numbers:
day = int(num[4:6])
print(day)
month = int(num[2:4]) - 20
print(month)
year = int(num[0:2])
if year < 10:
year2 = 2000 + int(num[1:2])
print(year2)
else:
year2 = 2000 + int(num[0:2])
print(year2)
f = open('C:\\Users\\X\\Desktop\\python\\Y\\Z.txt','w')
f.write(str(date()))
改为附加到文件。
[当您执行open(path, 'w')
时,您是在告诉Python覆盖已经存在的所有内容。您还应该使用上下文管理器。
with open('C:\\Users\\X\\Desktop\\python\\Y\\Z.txt', 'a') as f:
f.write('a date here')
您无法写入该函数的输出,因为它不返回任何内容。除此之外(或除此之外),您可以yield
信息,使函数成为生成器,然后每行写一个。
def date():
for num in numbers:
day = int(num[4:6])
print(day)
yield day
month = int(num[2:4]) - 20
print(month)
yield month
year = int(num[0:2])
if year < 10:
year2 = 2000 + int(num[1:2])
print(year2)
else:
year2 = 2000 + int(num[0:2])
print(year2)
yield year2
with open('C:\\Users\\X\\Desktop\\python\\Y\\Z.txt', 'a') as f:
for line in date():
f.write(line)