python输入函数input

上篇我们给出了一个简单的猜数游戏,还有很多不足的地方:

(1)输入的时候当我们输入其他非数字的字符时,系统会报错,因为非数字字符无法转换为整数,那么我们如何修改可使程序更加健壮呢?为了解决这个问题我们先来了解一下python中的input输入函数。

在python2中从控制台接收输入的方式有两种:input()和raw_input(),当输入为纯数字时

  • input返回的是数值类型,如int,float
  • raw_inpout返回的是字符串类型,string类型

输入字符串为表达式

input会计算在字符串中的数字表达式,而raw_input不会。

如输入 “57 + 3”,input会得到整数60,而raw_input会得到字符串”57 + 3”

在python3中将raw_input与input进行了合并,只有input函数接收控制台的标准输入,返回的类型为str,即使你输入的是纯数字也会转换为str类型,因此我们需要进行类型转换。

游戏的改进

在输入非数字的字符时,能够给出提示,并继续执行。

本人刚接触python,能力有限,目前只实现了给出提示这一功能

import random
num=random.randint(0,10)

print(‘--------哈哈工作室----------‘)
def strToint(temp):
    try:
        g=int(temp)
        return g
    except:
        print(‘出错啦!请输入一个非0数字哦‘)
temp=input(‘输入一个非0数字吧:‘)
guess=strToint(temp)
n=0
while(guess!=num and n<2):
    if(guess>num):
        print(‘大了大了,你还有‘+(str)(2-n)+‘次机会哦‘)
        n=n+1
    else:
        print(‘小了小了,你还有‘+(str)(2-n)+‘次机会哦‘)
        n=n+1
    temp=input(‘再猜一个数字吧:‘)
    guess=int(temp)
if(n==2):
    print(‘太遗憾了,你已经没有机会了‘)
else:
    print(‘你太厉害了,猜对了!‘)
print("游戏结束")

待更进……

python输入函数input,布布扣,bubuko.com

时间: 2024-10-06 09:52:28

python输入函数input的相关文章

Python中input()函数漏洞及与raw_input()函数区别

Python中input()函数漏洞 一.函数简介: input()函数是python中的内置函数,函数作用是从stdin中读取数据 喜欢python2的朋友都知道python中有两个常见的输入函数:input()函数和raw_input()函数,但是我们在写脚本使用输入函数的时候,往往会使用raw_input()函数.这是为什么?因为input()函数在python2中拥有非常大的安全隐患.所以当我们自学python的时候,课本上,老师说的都是推荐raw_input()函数.Input()函数

python的input和while循环

python的input和while使用 一.Python input()函数:获取用户输入的字符串 Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型. Python2.x 中 input() 相等于 eval(raw_input(prompt)),用来获取控制台的输入. raw_input() 将所有输入作为字符串看待,返回字符串类型.而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float ). 注意:

Python输入函数 raw_input( ) 与 input()

一. raw_input() 在Python中,获取键盘输入的数据的方法是采用 raw_input 函数,那么这个 raw_input 怎么用呢? 注意: raw_input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示 raw_input()在从键盘获取了数据以后,会存放到等号右边的变量中 raw_input()会把用户输入的任何值都作为字符串来对待 二. input() input()函数与raw_input()类似,但其接受的输入必须是表达式. input()函数

Python函数-input()

input([prompt]) 如果[prompt]是存在的,它被写入标准输出中没有换行.然后函数读取输入,将其转换为一个字符串,然后返回. 1 >>> s = input('--> ') 2 --> Monty Python's Flying Circus 3 >>> s 4 "Monty Python's Flying Circus" 补充: python 2.x版本的解释: 使用input和raw_input都可以读取控制台的输入,

Python 之 input 与 raw_input 的区别

input 接受合法的Python 表达式 raw_input 将所有的输入作为原始数据,将其放入字符串中 >>> name = input("what's your name ?") what's your name ? Yellow Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> name = input("

python之input与raw_input的区别

input()与raw_input()其实都是让用户输入数据,当记录整数或浮点数时是没什么区别的,因为用户直接输入的原始数据直接就可以保存到变量中,例如: >>> i = input('i:') i:123 >>> print i 123 但是,当用户输入的是字符串时就有点小麻烦了,我们不能要求用户输入的字符串两边加上(' "),这样是不是用户体验太差了呢?例如: >>> s = input('s:') s:'abc' >>>

python之input()、while、title()和upper()

代码举例: # 小应用:问卷调查,记录下调查者名字和回答,询问是否继续. # 运用数据字典.while.input().title()和upper(). responses = {} flag = True while flag: name = input("\n请输入姓名:") answer = input("请输入你的爱好:") responses[name.title()] = answer repeat = input("是否继续:(Y/N)&qu

python中input和raw_input用法及区别

input() 本质上还是使用 raw_input() 来实现的,只是调用完 raw_input() 之后再调用 eval() 函数,所以,你甚至可以将表达式作为 input() 的参数,并且它会计算表达式的值并返回它. 不过在 Built-in Functions 里有一句话是这样写的:Consider using the raw_input() function for general input from users. 除非对 input() 有特别需要,否则一般情况下我们都是推荐使用 r

Python中input和raw_input在命令行中读入文件地址的区别

如果直接在命令行中利用input和raw_input读入一个文件来处理,并且想要采用直接将文件拖入命令行来处理的方式, input方法可以直接处理,而如果要采用raw_input的方法的话,读入文件地址会带有引号,还需要自己手动去掉引号才能处理文件. 在ipython中测试一下代码:(读入一个图片文件的地址字符串) a = input("input a:\n") print "the input method: ",a b = raw_input("inp