Python中input()和raw_input()函数的比较与应用
本文最后更新于 4120 天前,其中的信息可能已经有所发展或是发生改变。

通过例子来了解 input() 和 raw_input() 的区别及用法,在脚本中输入下面的代码:

name = input(“What’s your name?”)
print “Hello, ” + name + “!”

输出后显示如下:

What’s your name?Chai
Traceback (most recent call last):
File “ex.py”, line 1, in <module>
name = input(“What’s your name?”)
File “<string>”, line 1, in <module>
NameError: name ‘Chai’ is not defined

虽然看上去是完全合法的程序,结果却无法输出。问题在于 input() 会假设用户输入的是合法的 Python 表达式(或多或少有些与repr函数相反的意思)。试着以带引号的字符串形式 “Chai” 重新输入,显示输出成功。

What’s your name?”Chai”
Hello ,Chai!

对于 input() ,它希望能够读取一个合法的 Python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError 。

因此,要求用户必须带着引号输入他们的内容显得有些过分,这时就需要使用 raw_input() 函数,它会把所有的输入当作原始数据(raw data),然后将其放进字符串中。接下来使用一个 raw_input() 的例子:

print “How much do you weigh?”,
weight = raw_input()
print “So,you are”, weight, “heavy.”

>>
How much do you weigh? 80kg
So,you are 80kg heavy.

最终的输出内容非常顺利。所以,除非对 input() 确实有特殊需要,否则一般情况下都会推荐使用 raw_input() 来与用户进行交互操作。

本作品采用 “知识共享署名-非商业性使用 4.0 国际许可协议” 进行许可。
免责声明:本站文章除特殊说明为原创禁转外,您可以自由的转载和修改,但请务必注明文章来源并不可用于商业目的。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇