python之与用户交互

  1. 接收用户的输入
    在python3中,input会将用户输入的所有内容都存成字符串类型。
username = input('请输入您的账号:')
print(username,type(username))

age = input('请输入你的年龄:') # age = '18'
print(age,type(age))
age = int(age) # int智能将存数字的字符串转成整形
print(age > 16)

在python2中:
raw_input():用法与python3中的input一模一样
input(): 要求用户必须输入一个明确的数据类型,输入的是什么类型,就存成什么类型

# python2
 age = input(":")
:18
>>> age,type(age)
(18, <type 'int'>)
>>> x = input("")
1.2
>>> x,type(x)
(1.2, <type 'float'>)
>>> y = input("")
[1,2,3]
>>> y,type(y)
([1, 2, 3], <type 'list'>)

2、字符串的格式化输出
2.1 %
按照位置与%s一一对应,少一个不行,多一个也不行

res = ‘my name is %s my age is %s’%('egon','18')
#res = 'my name is %s my age is %s'%('18','egon')
#res = 'my name is %s'%'egon'
print(res)

以字典的形式传值,打破位置的限制

res = 'my name is %(name)s my age is %(age)s'%{
    
    'name':'egon','age':'18'}
print(res)

%s可以接收任意类型

print('my age is %s' %18)
print('my age is %s'%[1,23])
print('my age is %s'%{
    
    'a',:333})
#print('my age is %d'%'18')
print('my age is %d'%18) # %d只能接收int

2.2 str.format 兼容性好
按照位置传值

res = 'my name {
    
    } my age {
    
    }'.format('egon',18)
print(res)

打破位置的限制,按照key=value传值

res = 'my name {
    
    name} my age{
    
    age}'.format(age=18,name='egon')
print(res)

2.3 f python3.5以后才推出

x = input('your name: ')
y = input('your age: ' )
res = f' my name{
    
    x} my age{
    
    y}'
print(res)

补充

print('成功的概率%s%%'%(97,))

x = 'egon'
y = 18
res  = f'name:{
    
    {
    
    {
    
    x}}} age:{
    
    y}'
print(res)

f的新用法: { }内的字符串可以被当做表达式运行

res = f'{
    
    10+3}'
print(res)

format新增

print('{
    
    x}======'.format(x='开始执行'))
print('{
    
    x}:=<10}'.format(x='开始执行'))
print('{
    
    x}:=>10}'.format(x='开始执行'))
print('{
    
    x}:=^10}'.format(x='开始执行'))

四舍五入

print('{
    
    salaries:.3f}'.format(salaries = 123,4567))

猜你喜欢

转载自blog.csdn.net/weixin_47237915/article/details/114285016