无法写入文件 - python

时间:2016-11-07 13:27:59

标签: python-3.x

l = []

print("We will need some information first.")
t_first_name = input("User First Name: ").lower()
while len(t_first_name) == 0 or t_first_name == ' ':
    t_first_name = input("User First Name: ").lower()

while len(t_last_name) == 0 or t_last_name == ' ':
    t_last_name = input("User Surname: ").lower()

f_n_up = t_first_name.upper()
l_n_up = t_last_name.upper()
f_n_title = t_first_name.title()
l_n_title = t_last_name.title()

l.append(t_first_name) # Lowercase
l.append(t_last_name)
l.append(f_n_up) # Uppercase 
l.append(l_n_up)
l.append(f_n_title) # The first letter is uppercase 
l.append(l_n_title)

f = open("p_list.txt", "a")
for x in l:
    print(x)
    if len(x) >= 5:
        f.write(x)
        print("test")

它将显示print行并创建文件,但是当我打开它时,我找不到任何单词。

它将询问用户名,然后列出关于他的列表,将其添加到列表l中,然后在其中创建一个循环并将该字符串写入文件中。

1 个答案:

答案 0 :(得分:1)

您应该致电f.close()f.flush(),以便将数据实际写入文件。

另一个(也是更好的)解决方案是使用with来处理文件的打开和关闭:

with open('p_list.txt', 'a') as f:
    for x in l:
        print(x)
        if len(x) >= 5:
            f.write(x)
            print("test")