python输入input注意事项_Python:input(用户交互)

shell中用户交互使用read -p,在python3中用户交互使用input

python2.x中用户交互使用raw_input,python2中也有input但是属于毫无用处的一种写法,可以直接忽略掉,于是python3中舍弃了这种写法改为直接使用input

以下为input的基本使用方法:

name = input("请输入您的姓名:")

age= input("请输入您的年龄:")

job= input("请输入您的职业:")

salary= input("请输入您的工资:")print('name :'+name,'\n','age :'+age,'\n','job :'+job,'\n','salary :'+salary) ###\n为换行符

执行结果为:

请输入您的姓名:lizi

请输入您的年龄:26请输入您的职业:it

请输入您的工资:7000name :lizi

age :26job :it

salary :7000

下面是几种格式化输出的方式:

第一种(+号拼接):

name = input("请输入您的姓名:")

age= input("请输入您的年龄:")

job= input("请输入您的职业:")

salary= input("请输入您的工资:")

info= ''' ###info = ''' ''' 此为打印多行的写法-------info of''' +name +'''--------

name :''' +name+'''age :'''+age+'''job :'''+job+'''salary :'''+salary+'''

'''

print(info)

执行结果为:

请输入您的职业:it

请输入您的工资:7000

-------info of lizi--------name : lizi

age :26job : it

salary :7000

此种方法太过于麻烦,并且所占内存极多,不推荐

第二种(%s,d,f):

name = input("请输入您的姓名:")

age= input("请输入您的年龄:")

job= input("请输入您的职业:")

salary= input("请输入您的工资:")

info= '''-------info of %s--------

name :%s

age : %s

job : %s

salary : %s'''%(name,name,age,job,salary)

执行结果为:

请输入您的职业:it

请输入您的工资:9000

-------info of lizi--------name :lizi

age :26job : it

salary :9000

此种方法中%s代表的是string类型,%d代表整数,%f代表浮点数

如果把info中age:%s换成%d,则代表此age必须为数字,此时如果定义age变量那里不进行数据类型转换,那么执行就会报错

info = '''-------info of %s--------

name :%s

age : %d

job : %s

salary : %s'''%(name,name,age,job,salary)

print(info)

---------------------------------

请输入您的姓名:lizi

请输入您的年龄:26

请输入您的职业:it

请输入您的工资:9000

Traceback (most recent call last):

File "D:\PyCharm\lizi\basis\20200216\input.py", line 11, in

info = '''

TypeError: %d format: a number is required, not str

此时需进行数据类型转换:

name = input("请输入您的姓名:")

age= int(input("请输入您的年龄:")) ###将age变量转为int类型

job= input("请输入您的职业:")

salary= input("请输入您的工资:")

info= '''-------info of %s--------

name :%s

age : %d

job : %s

salary : %s'''%(name,name,age,job,salary)print(info)

---------------------------------------

请输入您的姓名:lizi                     ###再次执行无报错

请输入您的年龄:26

请输入您的职业:it

请输入您的工资:

-------info of lizi--------

name :lizi

age : 26

job : it

salary :

%f使用的相对较少所以不需过多了解,此为格式化输出的第二种方式,比较常用

第三种(.format):

name = input("请输入您的姓名:")

age= int(input("请输入您的年龄:"))

job= input("请输入您的职业:")

salary= input("请输入您的工资:")

info= '''-------info of {_name}--------

name :{_name}

age : {_age}

job : {_job}

salary : {_salary}'''.format(_name=name,_age=age,_job=job,_salary=salary)print(info)

执行结果为:

请输入您的职业:it

请输入您的工资:777

------- info of lizi --------name :lizi

age :26job : it

salary :777

此format方法在某些特定场合下有必要作用

第四种(.format的第二种写法):

name = input("请输入您的姓名:")

age= input("请输入您的年龄:")

job= input("请输入您的职业:")

salary= input("请输入您的工资:")

info3= '''------- info of {0} --------

name :{0}

age : {1}

job : {2}

salary : {3}'''.format(name,age,job,salary)print(info3)

执行结果为:

请输入您的职业:it

请输入您的工资:999

------- info of lizi --------name :lizi

age :26job : it

salary :999

此为.format的第二种写法,.format只有这两种写法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值