七、格式化输出和运算符

1.格式化输出

当你遇到这样的需求:字符串的某些位置变成动态可传入的,首先考虑到格式化输出。

1.制作一个公共的模板

2.让一个字符串的某些位置变成动态可传入的。(% 占位符 s --> str 、d(数字)--> int、 i 、r

3.格式化输出

 

name = input('请输入你的姓名:')
age = input('请输入你的年龄:')
job = input('请输入你的工作:')
hobby = input('请输入你的爱好:')

msg = '''------------ info of %s -----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end -----------------''' % (name, name, int(age), job, hobby)
print(msg)

 

# 坑:在格式化输出中,% 只想表示一个百分号,而不是作为占位符使用,要在后边多加个%

msg = '我叫%s,今年%s,学习进度1%%' % ('太白金星', 18)
print(msg)

 

2.运算符

运算符:

算数运算符(+ -),比较运算符(> ==),赋值运算符 (=, +=),逻辑运算符(not and or) ,成员运算符

 

i1 = 2
i2 = 3
print(2 ** 3)
print(10 // 3)          #去整除—返回商的整数部分
print(10 % 3)

print(3 != 4)           #不等于 - 比较两个对象是否不相等

count = 1
count = count + 1
count += 1
print(count)

 

and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20。(a=10,b=20)
or x or y 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。(a=10,b=20)
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False

 

# 情况1:两边都是比较运算
# print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)
# print(True or False)

# 情况2:两边都是整数
'''
x or y , x为真,值就是x,x为假,值是y
'''
# print(1 or 2)               1
# print(3 or 2)               3
# print(4 or 2)               4
# print(-1 or 2)             -1
# print(0 or 2)               2

# print(1 and 2)            2

note:or对比时,左边为真即输出左边,否则输出右边;and相反

and(与) or(或) not(非)

在没有()的情况下,优先级:not > and > or,同一优先级从左至右依次计算

 

数据类型之间的转换

# str ---> int : 只能是纯数字组成的字符串
s1 = '00100'
print(int(s1))
# int ----> str
i1 = 100
print(str(i1),type(str(i1)))

# int ---> bool : 非零即True ,0为False。
i = 0
print(bool(i))             #False
# bool ---> int
print(int(True))          # 1
print(int(False))        # 0

 

posted on 2019-05-02 22:59  雨后清明  阅读(191)  评论(0编辑  收藏  举报

导航