我一直在尝试将Python中嵌套的'while'循环函数的输出转换为文本文件。我知道'写一个文件'是:
TheFile=open("C:/test.txt","w")
TheFile.write("Hello")
TheFile.close()
但是当想要将我的经纬度坐标的输出输出到文本文件中时,我应该使用什么?我能够从打印功能中得到我想要的东西,但似乎无法将其放入文本文件中......谢谢:
lat=-100
long=-190
while lat <=80:
lat=lat+10
long=-190
while long<=170:
long=long+10
print ("latitude:"+format(lat),"longitude:"+format(long))
答案 0 :(得分:1)
只使用一个TheFile=open("C:/test.txt","w")
语句,只使用一个TheFile.close()
语句,并确保它们在所有循环之外。
然后,您可以将file=
参数用于print
,否则将其保持为完全相同的print
语句。
在您的示例中,例如:
TheFile=open("C:/test.txt","w")
lat=-100
long=-190
while lat <=80:
lat=lat+10
long=-190
while long<=170:
long=long+10
print ("latitude:"+format(lat),"longitude:"+format(long), file=TheFile)
TheFile.close()
答案 1 :(得分:1)
这会将stdout
上打印的输出打印到文件中。你在write()函数中使用','吗?它将它视为两个独立的论点。
更多关于来自Python shell帮助的write
。
写(...)
写(str) - &gt;没有。将字符串str写入文件。Note that due to buffering, flush() or close() may be needed before the file on disk reflects the data written.
试试这段代码:
with open("output","w") as f:
lat=-100
long=-190
while lat <=80:
lat=lat+10
long=-190
while long<=170:
long=long+10
f.write("latitude:"+format(lat)+" longitude:"+format(long))