繁体   English   中英

如何获取代码以读取文本文件的所有行?

[英]How do I get my code to read all lines of a text file?

我将尝试解释这一点。 我是一个初学者(所以请不要困难的术语,大声笑)正在编写一个代码,使图书馆中的用户可以借书。 每个用户都有一个库代码和一些积分。 这些的详细信息在文本文件中。 第一列是库号。 第二列是他们的信用余额。 第三栏是最低信用额度。 第四栏是最高信用额:

ABC, 125, 150, 200
ABD, 80, 30, 80
ABE, 0, 23, 50
ABF, 20, 20, 50
ABG, 78, 30, 80
ABH, 92, 90, 300
ABI, 3, 9, 20
ABJ, 7, 6, 38

当他们的余额达到最低信用余额时,需要添加更多信用。 我想让我的程序读取文本文件,并确定哪些用户需要在其帐户中添加更多的信用才能超过最低信用余额。 我还要指定达到最高信用额度还需要多少信用。 我希望将这些详细信息写入单独的文件中。 到目前为止,这是我所做的:

f = open("customerInfo.txt", "r")
for line in f.readlines():
z = line.split(", ")
UserID = z[0]
CreditBalance = z[1]
MinBalance = z[2]
MaxBalance = z[3]
HowManyAwayFromMaxBalance = MaxBalance - CreditBalance

if int(z[2]) - int(z[1] <= 0:
    CreditInfo = open("creditinfo.txt", "w") #This is a blank text file
    CreditInfo.write("User", UserID, "needs more credits. In order to reach the maximum credit balance, they would need", HowManyAwayFromMaxBalance, "credits added to their account./n"

这不适用于每一行。 我将如何编辑此代码,以使它读取每一行并单独对每一行执行相同的操作? 因为将有数百个名称添加到此列表中,所以我希望它会自动发生。 因此,在这种情况下,用于向帐户ABC,ABE,ABF和ABI添加信用的详细信息将自动打印在creditinfo.txt文件中。 预先谢谢您,请问这是否令人困惑。

您发布的代码中有几个错误,但我尚不清楚您到底是什么问题。 如果您能解释一下,请告诉我。

这对我来说很好:

f = open("customerInfo.txt", "r")
fw = open("creditInfo.txt", "w")

for line in f.readlines():
        z = line.split(", ")
        UserID = z[0]
        CreditBalance = int(z[1])
        MinBalance = int(z[2])
        MaxBalance = int(z[3])
        HowManyAwayFromMaxBalance = MaxBalance - CreditBalance

        if (MinBalance - CreditBalance) <= 0:
            fw.write("User " + UserID + " needs more credits. In order to reach the maximum credit balance, they would need " + str(HowManyAwayFromMaxBalance) + " credits added to their account.\n")

f.close()
fw.close()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM