我遇到問題。我想輸入一個字符串給if命令,但總是顯示else的結果。這裏是腳本:如果命令輸入無法讀取
name = sys.stdin.readline()
if name == 'a':
print('a')
else:
print('b')
我遇到問題。我想輸入一個字符串給if命令,但總是顯示else的結果。這裏是腳本:如果命令輸入無法讀取
name = sys.stdin.readline()
if name == 'a':
print('a')
else:
print('b')
你的name
可能有一個尾隨的換行符。無論是與
剝離或更改你的病情:
if name == 'a\n':
[...]
那麼,\ n改變一些東西?順便說一句,我怎麼能改變那樣的格式呢?它的工作 –
\ n也是一個角色,但無形,所以是的。 – Zydnar
使用strip
功能,將從您的輸入中去除環境空格字符。
import sys
name = sys.stdin.readline().strip()
if name == 'a':
print('a')
else:
print('b')
現在是:如果name等於'a'charcter,則打印charcter'a'。但是你確定,sys.stdin.readline()等於'a'字符嗎?在if語句之前寫一行:print(name)來保證。 – Zydnar
@Zydnar打印'name'不會使空白字符變得明顯。 –
也許print(ord(name)) – Zydnar