作者ALTandTAB (30)
看板Python
標題[問題] input(prompt)
時間Sat May 14 14:54:01 2011
大家好 我用的是python3.2 而用input()時遇到了些問題如下
username = input('請輸入姓名: ')
data = input(username + ' -> ')
在linux執行以下程式碼的時候是沒有問題的 會跑出:
請輸入姓名: altandtab
altandtab ->
但是win7下的cmd裡跑就會有問題 會跑出:
請輸入姓名: altandtab
-> ndtab
輸入的提示游標在ndtab的n下方閃爍
主要我是不想讓input()裡面的prompt做出win7下的情況
請問這是哪方面的問題? 我應該朝哪方面著手呢?
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.131.7
1F:推 Conjuror:你可以把 username 印出來看,應該會看到像 altandtab\r 05/14 17:01
2F:→ Conjuror:問題就是出現在那個 \r,剩下的留給你解決!? 05/14 17:01
3F:推 Conjuror:Hint: 請看上一篇 0.0 05/14 17:03
4F:→ uranusjr:Windows 換行符的問題... 05/14 17:11
5F:→ ALTandTAB:奇怪? 我印出來不會出現\r 所謂印出來是指print嗎 05/14 18:54
6F:→ ALTandTAB:repr 05/14 19:07
謝謝 問題已解決 因為raw string會有\r的存在 把他弄掉即可
附上我的作法
username = repr(input('請輸入姓名: '))
data = input(username[1:len(username)-3] + ' -> ')
※ 編輯: ALTandTAB 來自: 140.116.131.7 (05/14 19:22)
7F:推 Conjuror:我用idle確認過,你的username最後應該是吃到\r 05/15 00:57