Reputation: 1289
First, code gets a name and makes a file with w
permission (also tested r+
) and it should write any other input in file, but it doesn't. I get an empty file.
user_name_in =input("gets Input")
fname = user_name_in
f = input()
ufile = open(fname,"w")
while True:
f=input(answer)
ufile.write(f)
Upvotes: 1
Views: 370
Reputation: 15204
As i wrote in the comments, always use the with
block to handle files as it takes care of intricacies you don't have to worry about. Now on the code, you repeat yourself, for example the first two lines are actually one.. This is what it would look when cleaned a bit.
fname = input("gets Input")
with open(fname, "w") as ufile:
f = input('write something')
ufile.write(f)
And as others also noticed, the answer
is never declared, there is no termination condition and the input prompts are either not the best or totally absent.
Upvotes: 5
Reputation: 5322
This code works for me:
user_name_in =input("gets Input")
fname = user_name_in
f = input()
ufile = open(fname,"w")
while True:
f=input(answer)
ufile.write(f)
Some considerations: I don't see where answer is declared, neither python interpreter see :P, maybe you forgot to paste this part of the code or indeed this was the error?
I don't understand why you assign the name of the file to a variable and then re-assign to another one.
How do I stop writing to the file? The only way I found was Ctrl-C, which doesn't sound ideal.
To reassure the file is being closed you can replace it with a with open(fname) as ufile block
Upvotes: 1