python基础02—raw

it2022-05-20  67

 python2x中:raw_input()和input()虽然都是从控制台读入数据,是2个不同的功能:

raw_input():默认所有输入默认都是字符串格式;如果是想输入数字,用input()

 

1 name=raw_input("请输入姓名:") 2 age=raw_input("请输入年龄:") 3 4 print("姓名是%s"%(name)) 5 print("年龄是%d"%(age)) View Code

 

 可以看到age在格式化输出的时候报错了,

请输入姓名:jim 请输入年龄:12 Traceback (most recent call last): File "XXXXX/xiti07.py", line 14, in <module> print("年龄是%d"%(age)) TypeError: %d format: a number is required, not str 姓名是jim

格式化输出是,提示%d需要一个数字,而不是str。通过print (type(name),type(age)) 来看一下。执行的输出是:

请输入姓名:jim 请输入年龄:13 (<type 'str'>, <type 'str'>)

如果想不报错:python2中,想输入一个数字的话,用input();或者在格式化输出或者其他运算的时候,先进行格式转换

1 name=raw_input("请输入姓名:") 2 age=input("请输入年龄:") 3 print (type(name),type(age)) 4 print ("姓名是%s"%name) 5 print ("姓名是%d"%age) 1 name=raw_input("请输入姓名:") 2 age=raw_input("请输入年龄:") 3 print (type(name),type(age)) 4 print ("姓名是%s"%name) 5 print ("姓名是%d"%int(age))

在python3x中:没有raw_input(),input()接收的所有输入默认都是字符串格式。要想程序不出错,可以把str转成int。

 

 

 

 

转载于:https://www.cnblogs.com/yimiaoyikan/p/8708480.html


最新回复(0)