0
私は、同様の質問に対する回答に示されている方法を無駄に使用しています。私は、ユーザにユーザ名を尋ねるプログラムを作成し、入力されたユーザ名であるファイル名でファイルを作成し、次にユーザにパスワードを尋ねてから、入力されたパスワードをファイルに書き込みます。また、ファイルに保存したいのはパスワードだけではないので、改行でパスワードを終了したい。.strip()を使ってpythonで改行を削除するにはどうしたらいいですか?
次に、ユーザーに再度ユーザー名を尋ね、その名前のファイルを開き、ユーザーに再度パスワードを要求し、「HUZZAH!」と印刷します。入力されたパスワードとファイル内のパスワードが一致する場合
改行作品なしに次のコード:
userinput = input("Username: ")
userinput += ".txt"
file = open(userinput, "w")
passchoice = input("Password: ")
file.write(passchoice)
print("")
userinput = input("Username: ")
userinput += ".txt"
file = open(userinput, "r")
password = file.readline()
file.close()
passinput = input("Password: ")
if(password == passinput):
print("HUZZAH!")
それはHUZZAHを印刷します!すべてが素晴らしいです。この問題は、次のコードに示すように、改行を追加するときに発生します。
userinput = input("Username: ")
userinput += ".txt"
file = open(userinput, "w")
passchoice = input("Password: ")
file.write(passchoice)
file.write("/n") #Note the addition of the newline
print("")
userinput = input("Username: ")
userinput += ".txt"
file = open(userinput, "r")
password = file.readline()
file.close()
password = password.strip("") #stripping whitespace as instructed
passinput = input("Password: ")
if(password == passinput):
print("HUZZAH!")
何も表示されません。私は間違って何をしていますか?例えば
str.strip([chars])
:tutorialspoint使用をよれ
' "/ nが"'改行ではありません。おそらく '' \ n "'を意味しましたか? –
また、 'password.strip()'を使う必要があります(最初の引数はありません!)。空の文字列*で取り除いています。つまり、何も取り除かれていません。 –
'password.strip(" ")'は 'password.strip() 'と同じではありません –