如何调用txt文件并将其放入代码中?

2024-09-29 06:35:38 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,如果我有以下代码:

import turtle, sys

def init_turtle():
    turtle.bgcolor('black')
    turtle.pencolor('yellow')
    turtle.fillcolor('dark sea green')
    turtle.pensize(2)
    turtle.left(90)
    turtle.speed(7)
    turtle.clear()
    turtle.home()
    turtle.penup()


def circle(x, y, radie):
    turtle.goto(x, y)
    turtle.pendown()
    turtle.begin_fill()
    turtle.circle(radie)
    turtle.end_fill()
    turtle.penup()

init_turtle()

userinput = input("Enter the file you want to open: ")
myfile = open(userinput)
info = myfile.readlines()
print (info)
myfile.close()

input()

input()

然后我有两个txt文件,其中一个是:

circle(0, -100, 100)

现在,当您打开程序并输入例如txt文件的名称时,假设它名为test.txt,它将只在命令窗口中读取文本。如何将其读入代码?这样就可以画一个圆了


Tags: 文件代码infotxtinputinitdefopen
2条回答

您可以使用NumPy“loadtxt”函数将文件加载到代码中。可以指定分隔符,可以是空格(即.txt)或逗号(即.csv)

z = np.loadtxt(file,delimiter=',', skiprows=1)

当数据文件包含带有标题的行时,使用Skiprows。 加载文件后,可以将特定的数据列(向量)加载到变量中

t = z[:,0]

这将把数组“z”的第一列加载到向量“t”中。零是数组的索引

当您想要读取由空格分隔的文本文件时,我使用的一种常用方法是:

fin = open('file.txt')
values = [line.split() for line in fin.readlines()]
for val in values:
    if val[0] == 'circle':
        circle(val[1], val[2], val[3])
    

相关问题 更多 >