在Python中从文本文件读取坐标
我有一个文本文件(coordinates.txt
):
30.154852145,-85.264584254
15.2685169645,58.59854265854
...
我有一个Python脚本,里面有一个循环:
count = 0
while True:
count += 1
c1 =
c2 =
在这个循环的每一次运行中,我需要读取每一行(计数),并把c1,c2
设置为每一行中的数字(这些数字是用逗号分开的)。有人能告诉我最简单的方法吗?
============================
import csv
count = 0
while True:
count += 1
print 'val:',count
for line in open('coords.txt'):
c1, c2 = map(float, line.split(','))
break
print 'c1:',c1
if count == 2: break
2 个回答
0
在编程中,有时候我们需要让程序在特定的条件下执行某些操作。比如说,当用户点击一个按钮时,程序就会做出反应。这种情况我们通常会用“事件”来描述。
事件就像是生活中的一些事情,比如你按下电灯开关,灯就亮了。在编程里,事件可以是用户的点击、键盘输入,或者其他任何可以触发程序反应的动作。
为了让程序知道什么时候发生了这些事件,我们需要设置“监听器”。监听器就像是一个守卫,时刻关注着是否有事件发生。一旦有事件发生,监听器就会通知程序去执行相应的操作。
举个例子,如果你在网页上点击了一个按钮,监听器会捕捉到这个点击事件,然后程序就可以根据这个事件来显示一条消息或者改变网页的内容。
总之,事件和监听器是让程序与用户互动的重要工具。通过它们,程序能够对用户的操作做出及时的反应。
f=open('coordinates.txt','r')
count =0
for x in f:
x=x.strip()
c1,c2 = x.split(',')
count +=1
4
最好的做法就是我上面提到的那样:
import csv
with open('coordinates.txt') as f:
reader = csv.reader(f)
for count, (c1, c2) in enumerate(reader):
# Do what you want with the variables.
# You'll probably want to cast them to floats.
我还加入了一种更好的方式来使用 count
这个变量,这个方法是 @abarnert 提到的,使用了 enumerate
。