python使用input函数时、必须添加提示文字-Python基础教程(4)使用input函数实现用户交互...

在shell编程中,如果要将用户输入的信息赋值给一个变量以实现交互的效果,使用的是read命令,如

read -p "what's your name:" name

echo $name

在python3中,使用的是input函数(2.x是raw_input),input后面括号里的内容和shell中的read -p一样,是一个提示说明性的信息,如

username=input('请输入你的名字:')

age=input('请输入你的年龄:')

print ('你好!',username,'你今年',age)

python使用input函数时、必须添加提示文字-Python基础教程(4)使用input函数实现用户交互...

通过input函数默认接受到的数据类型是str,可以使用int()函数或者float()函数进行数据转换,如下

num1 = int(input("请输入第一个数字"))

num2 = int(input("请输入第二个数字"))

print (num1 + num2)

来看一个使用变量实现格式化输出的例子,这里和shell不同,如果要在文本中引用变量,是先用%s来进行占位(s代表的是string),然后再通过%()来指定具体的变量名:

name = input("name:")

age = input("age:")

job = input("job:")

info = '''

-----info of %s-----

Name:%s

Age:%s

Job:%s

''' %(name,name,age,job)

print (info)

上面说到%s是代表string,说明这是个字符串类型,同样也有%d代表数字、%f代表浮点,这样的作用是可以检测验证数据类型,不符合的话会报错。需要注意的是通过input接收到的数据都会将被当做字符串类型,就算我们写了%d,但是通过type()函数来查看依然是string类型。如图

python使用input函数时、必须添加提示文字-Python基础教程(4)使用input函数实现用户交互...

python使用input函数时、必须添加提示文字-Python基础教程(4)使用input函数实现用户交互...

所以如果我们指定了其他类型的数据,一定要强制进行一次转换,如

age = int(input("age:"))

另一种格式化方式(推荐):

name = input("name:")

age = input("age:")

job = input("job:")

info = '''

-----info of {_name}-----

Name:{_name}

Age:{_age}

Job:{_job}

''' .format(_name=name,

_age=age,

_job=job)

print (info)