因此,作为我的程序的一部分,我有一个按钮制作子程序,它接受几个参数,以便放置它,给它上色等...
def makeTile(message, fontSize, x, y, w, h, overColour, notOverColour)
实际上,我希望能够做的是在每行上都有一组带有x和y坐标的文本文件来创建按钮。文本文档中的10个唯一行可能意味着可以制作10个按钮。
如果我像这样列出文本文件......
300,200
300,210
300,220
310,200
310,210
310,220
例如......
我怎样才能读完每一行,将第一个值放入" x"变量和第二个值成为" y"变量,以便它们都可以在按钮创建子程序中使用,然后移动到下一行,直到文件中的所有行都被读取并且所有按钮都被创建了?
感谢
答案 0 :(得分:1)
如果您不想使用CSV,您可以直接读取文件,然后在每一行上调用.split()命令以获取x和y。
with open("file.txt") as f:
for line in f:
x, y = line.split(", ") # splits the line into the part before the comma and after the comma
用x和y做你喜欢的事。您可能希望将它们转换为整数。
答案 1 :(得分:0)
您可以打开csvfile,然后对每一行使用索引将x和y放入函数调用中:
import csv
with open('lines.csv') as l: # Open the File
l = csv.reader(l)
for row in l: #start a loop
#use row[0] for x (the first item in the row and row[1] as y (the 2nd item)
makeTile(message, fontSize, row[0], row[1], w, h, overColour, notOverColour)
这将从传入的每一行创建一个磁贴。