Python 如何将int变量添加到txt文件

Python 如何将int变量添加到txt文件,python,python-3.x,text,Python,Python 3.x,Text,我需要将rand_Num添加到一个名为rand_Number的空白txt文件中。我需要做100000次。这是我的密码。。。 #导入所需的库 import random import turtle # screen variables wn_wid = 550 wn_length = 350 wn_title = "Random output" wn_background_col = "#3d3d3d" wn_tracer = 0 # creates and configures windo

我需要将rand_Num添加到一个名为rand_Number的空白txt文件中。我需要做100000次。这是我的密码。。。 #导入所需的库

import random
import turtle

# screen variables

wn_wid = 550
wn_length = 350
wn_title = "Random output"
wn_background_col = "#3d3d3d"
wn_tracer = 0

# creates and configures window

wn = turtle.Screen()
wn.setup(wn_wid, wn_length)
wn.title(wn_title)
wn.bgcolor(wn_background_col)
wn.tracer(wn_tracer)

# creates text

text = turtle.Turtle()
text.speed(0)
text.color("#ffffff")
text.pu()
text.hideturtle()

# text variables

font = "Comic Sans MS"
font_size = 48
alignment = "center"

# rep_num variable

rep_Num = 0

# central loop

# loop repeat variable

repeats = 100000

 # main loop

 for reps in range(repeats):

     # adds 1 to rep_Num variable

    rep_Num += 1

    # generates random number

    rand_Num = random.randint(0, 100)

    # puts text on screen

    text.clear()
    text.write(str(rep_Num) + ": " + str(rand_Num), align=alignment, font=(font, font_size, "normal"))

    # checks to see whether it needs to close win

    if rep_Num == repeats:
        wn.bye()
        break

    # updates window

    wn.update()

这是我所有的代码,所有的工作都是我想要的。我只需要在循环中添加一些东西,让我可以将rand_Num变量添加到一个名为rand_Numbers的txt中的新行,我使用CSV模块完成了这项工作,这将使随着项目的增长,添加其他数据变得更加容易。即使这不是您的意图,生成的文件仍然可以轻松地用于数据分析目的。如果您确实需要文本文件,也可以通过这种方式生成文本文件

我增加了这个功能:

def write_random(rand_Num):
    num = [rand_Num]
    with open("random_values.csv", "a", newline='', encoding="utf-8") as csvfile:
        writer = csv.writer(csvfile)
        writer.writerow(num)
它生成一个csv文件(可以用Excel处理,以防您想用数据或其他东西进行数据分析),每个随机值都在一个单独的行上

如果你真的想要一个文本文件,你可以把扩展名从.csv改为.txt,只要你每行只包含一条数据

以下是完整的工作代码:

import random
import turtle
import csv
def write_random(rand_Num):
    num = [rand_Num]
    with open("Rand_Number.csv", "a", newline='', encoding="utf-8") as csvfile:
        writer = csv.writer(csvfile)
        writer.writerow(num)
# screen variables
wn_wid = 550
wn_length = 350
wn_title = "Random output"
wn_background_col = "#3d3d3d"
wn_tracer = 0

# creates and configures window
wn = turtle.Screen()
wn.setup(wn_wid, wn_length)
wn.title(wn_title)
wn.bgcolor(wn_background_col)
wn.tracer(wn_tracer)

# creates text

text = turtle.Turtle()
text.speed(0)
text.color("#ffffff")
text.pu()
text.hideturtle()

# text variables

font = "Comic Sans MS"
font_size = 48
alignment = "center"

# rep_num variable

rep_Num = 0

# central loop

# loop repeat variable

repeats = 100000

# main loop

for reps in range(repeats):

    # adds 1 to rep_Num variable

    rep_Num += 1

    # generates random number

    rand_Num = random.randint(0, 100)
    write_random(rand_Num)
    # puts text on screen

    text.clear()
    text.write(str(rep_Num) + ": " + str(rand_Num), align=alignment, font=(font, font_size, "normal"))

    # checks to see whether it needs to close win

    if rep_Num == repeats:
        wn.bye()
        break

    # updates window

    wn.update()


您可以将
与open(file)
synthax一起使用。我会这样写:

with open('Rand_Numbers', 'w') as f:
    for reps in range(repeats):

        # adds 1 to rep_Num variable

        rep_Num += 1

        # generates random number

        rand_Num = random.randint(0, 100)
        f.write(str(rand_Num))

        # puts text on screen

        text.clear()
        text.write(str(rep_Num) + ": " + str(rand_Num), align=alignment, font=(font, font_size, "normal"))

        # checks to see whether it needs to close win

        if rep_Num == repeats:
            wn.bye()
            break

        # updates window

        wn.update()
顺便说一下,您应该删除rep_Num=0和

if rep_Num == repeats:
       wn.bye()
       break
在代码中,因为循环已经完成了任务。
wn.bye()
将添加到循环之后。

有许多教程介绍如何从Python写入文件。如果你在浏览器中搜索“Python文件编写教程”,你会找到比我们在这里能更好地解释这一点的参考资料。