day05 用户的交互

# 接收用户的输入
# 在Python3:input会将用户输入的所有内容都存成字符串类型(str)
# username = input('请输入你的账号密码:')
# print(username, type(username))        # 此时的username的类型是<class 'str'>

# age = input('请输入年龄:')
# print(age, type(age))
# age=int(age)
# # int只能将纯数字的字符串转成整型
# print(age==16)


# int("12345")
# int("1234.5")
# int("1234abc5")

# 在python2中:
# raw_input():用法与python3的input一模一样
# input(): 要求用户必须输入一个明确的数据类型,输入的是什么类型,就存成什么类型
# >>> age=input(">>>>>>>>>>>>>>>>>>>>>: ")
# >>>>>>>>>>>>>>>>>>>>>: 18
# >>> age,type(age)
# (18, <type 'int'>)
# >>>
# >>> x=input(">>>>>>>>>>>>>>>>>>>>>: ")
# >>>>>>>>>>>>>>>>>>>>>: 1.3
# >>> x,type(x)
# (1.3, <type 'float'>)
# >>>
# >>> x=input(">>>>>>>>>>>>>>>>>>>>>: ")
# >>>>>>>>>>>>>>>>>>>>>: [1,2,3]
# >>> x,type(x)
# ([1, 2, 3], <type 'list'>)
# >>>

# 2.格式化输出
# 值按照位置与%s一一对应,少一个不行,多一个也不行
# res = "my name is %s my age is %s" % ('yuhao', '22')
# print(res)
# res = "my name is %s my age is %s" % ('22', 'yuhao')
# print(res)
# res = "my name is %s" % "yuhhao"
# print(res)

# 以字典形式传值,打破位置的限制
# res="我的名字是 %(name)s 我的年龄是 %(age)s" %{'name':"yuhao","age":'22'}
# print(res)

# %s可以接受任意类型的数据
# print('my name is %s' % '18')
# print('my name is %s' % 18)
# print('my name is %s' % 'aaa')
# print('my name is %s' % [1, 2])
# print('my name is %s' % {'aaa', 1, 2})
# print('my age is %d' % 18)
# print('my age is %d' % "18")
# %d 只能接受int类型的整数
# 字典的形式传值,打破位置的限制
# res="我的名字是 %(name)s 我的年龄是 %(age)s" %{"age":"18","name":'egon'}
# print(res)

# 2.2 str(.format):兼容性好
# 按照位置传值
# res='我的名字是 {} 我的年龄是 {}'.format('egon',18)
# print(res)

# res='我的名字是 {0}{0}{0} 我的年龄是 {1}{1}'.format('egon',18)
# print(res)

# 打破位置的限制,按照key=value传值
# res="我的名字是 {name} 我的年龄是 {age}".format(age=18,name='egon')
# print(res)

# 2.3 f:python3.5以后才推出
# x = input('your name: ')
# y = input('your age: ')
# res = f'我的名字是{x} 我的年龄是{y}'
# print(res)

# 了解知识
"""
2.4 填充与格式化
# 先取到值,然后在冒号后设定填充格式:[填充字符][对齐方式][宽度]
# *<10:左对齐,总共10个字符,不够的用*号填充
print('{0:*<10}'.format('开始执行')) # 开始执行******

# *>10:右对齐,总共10个字符,不够的用*号填充
print('{0:*>10}'.format('开始执行')) # ******开始执行

# *^10:居中显示,总共10个字符,不够的用*号填充
print('{0:*^10}'.format('开始执行')) # ***开始执行***
2.5 精度与进制

print('{salary:.3f}'.format(salary=1232132.12351))  #精确到小数点后3位,四舍五入,结果为:1232132.124
print('{0:b}'.format(123))  # 转成二进制,结果为:1111011
print('{0:o}'.format(9))  # 转成八进制,结果为:11
print('{0:x}'.format(15))  # 转成十六进制,结果为:f
print('{0:,}'.format(99812939393931))  # 千分位格式化,结果为:99,812,939,393,931

"""
# print('{0:*^10}'.format('开始执行'))   #***开始执行***
# print('{0:*>10}'.format('开始执行'))   #******开始执行

总结

%s传值:后面要跟一个%(),注意:()里面是要进行传的值
print("my name is %s,my age is %s" %('yhh',18))    #只能按前后顺序传值

下面这一个是按照字典传值,%(这里面放key)s,同理,后面要建一个字典%{}
print("my name is %(name)s,my age is %(age)s"%{'age':18,"name":'yhh'})   #   可以按照key传值

2.2 str(.format):兼容性好 # 按照位置传值

# res='我的名字是 {} 我的年龄是 {}'.format('egon',18)

# print(res)

# res='我的名字是 {0}{0}{0} 我的年龄是 {1}{1}'.format('egon',18)

# print(res)

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

# res="我的名字是 {name} 我的年龄是 {age}".format(age=18,name='egon')

# print(res)   注意:这个地方得是字典,所以一定要进行age=18得操作,用赋值符号“=”

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值