在Python中将文本文件内容从“str”转换为“int”

在Python中将文本文件内容从“str”转换为“int”,python,string,integer,Python,String,Integer,我正在编写一个代码,首先我创建一个文本文件,然后向其中输入数据,但问题是,要输入的数据是一个整数,我不知道如何输入,我在做什么,我首先以“str”形式输入,然后我不知道如何将其转换为整数,但我也失败了。我还想知道,我们可以对文件中的整数进行排序吗,这是我的代码: f = open("o.txt","w+") n = 3 for a in range(n): f.write(a) f.close() 我得到一个错误: write() argument must be str, not

我正在编写一个代码,首先我创建一个文本文件,然后向其中输入数据,但问题是,要输入的数据是一个整数,我不知道如何输入,我在做什么,我首先以“str”形式输入,然后我不知道如何将其转换为整数,但我也失败了。我还想知道,我们可以对文件中的整数进行排序吗,这是我的代码:

f = open("o.txt","w+")
n = 3
for a in range(n):
    f.write(a)
f.close()
我得到一个错误:

 write() argument must be str, not int
好的,那么我们可以给str,但是我们如何将它转换成int并对整个文件进行排序呢


问题:如果可能,我想用整数写它,或者我们以后转换它并对文件进行排序?

从文件中读取时,必须确保读取的每一行都是int,使用int

如果将代码更改为:

f = open("o.txt", "w+")
n = 3
for a in range(n):
    f.write(str(a))
f.close()
它将运行,但文件将如下所示:

012
0
1
2
这样就无法区分每个整数。我假设你想把一堆整数放到一个文件中,然后分别对文件进行排序。您应该在每次写入中添加换行符

f = open("o.txt", "w+")
n = 3
for a in range(n):
    f.write(str(a) + "\n")
f.close()
新文件将如下所示:

012
0
1
2

您将能够逐行阅读。

尽早了解字符串类型的格式化方法可能是个好主意,至少以最简单的形式:

f.write( "{}\n".format(a) )

无论a是什么,它都能正常工作。

您只能在文本文件中写入字符串。问题:我想用一个整数->不可能,你以后再转换,我们以后能转换吗?