windows下一個回車鍵是兩個字符'/r/n’,python3.2在控制檯窗口中使用input()獲取用戶輸入時只把'/n'濾掉了,但是還存在'/r',但是使用len()查看獲取的字符串是不含'/r'的長度,所以如果使用=='1'比較獲取的函數時,會false,而在IDLE中回車鍵只是'/n',在IDLE中能正常運行的代碼,在控制檯中就可能有問題了。下面是我的一個例子:
s='ss'
print(type(s),len(s))
print(type(s),len(s))
if s=='ss':
print('ss相等',s)
a=input('輸入')
print(type(a),a,len(a))
if a=='1/r' or a=='1': #這樣判斷就不會出錯了
print('字符')
elif a==1:
print('數字')
else:
print('什麼也不是')
input()
上面的程序可以保存成1.py,雙擊正常運行了