Python-第5次课堂笔记
1字符串
1.1字符串的拼串
print(‘66’+‘77’)
print(‘fang’+‘zhong’+‘yu’)
print(‘fang’+’ zhong’+’ yu’)
f=‘fang’
z=‘zhong’
y=‘yu’
print(‘f+z+y=’+f+z+y) # 这里是拼串的案例,注意这里是加号,拼串
1.2参数的传递
f=‘fang’
z=‘zhong’
y=‘yu’
print(‘f+z+y=’,f+z+y) #这个是参数传递的案例,这里是逗号,后面是变量名
1.3占位符
-
%s 字符串占位
print(‘love python%s’)
print(‘love python%s’%’ hahh’)
a=‘love pyton %s’ #s是小写,大写报错
print(a %‘hahh’)
a=‘love python%s’
b=‘hahh’
print(a%b) -
%f 浮点数占位
a=‘love python%f’
b=1.07896
print(a%b) -
%d 整数占位
a=‘love python%d’
b=1000
print(a%b)
1.4 格式化字符串
-
格式化字符串语法 f+str({变量1},{变量2}…)变量和变量之间用逗号隔开
s1=‘fang’
s2=‘zhong’
s3=‘yu’
r=f’hello {s1},{s2},{s3}’ # f’字符串’ ,字符串={变量1},{变量2},…{变量n}
print® -
s=‘i like {}’ # 中扩号中的内容为空或0.这里涉及到元组的概念。
a=s.format(‘python’)
print(a) -
s=‘i like {0},{1}’ # 中扩号中的内容均为空或0、1.这里涉及到元组的概念。
a=s.format(‘python’,‘java’)
print(a)
1.5 练习
-
练习:方法1
d = ‘张三的年龄是%d岁,%s的岁数更大’ % (22, ‘李四’) #要括号括起来。
print(d) -
练习:方法2
a = ‘张三的年龄是{}岁,{}的岁数更大’ # 用{}代替%d和%s
d = a.format(22, ‘李四’)
print(d) -
练习:方法3
age = 22
name1_1 = ‘李四’
d = f’张三的年龄是{age}岁,{name1_1}的岁数更大’
print(d)
1.6
-
len() 获取字符串的长度
print(len(‘woaini’))
print(len(‘wo ai ni’)) -
max()返回最大值
str=‘abc defg’
print(max(str)) # 取的是这个字符对应的ASCII的值 -
min()返回最小值
print(min(str))
print(max(str),min(str)) -
in 判断一个字符或字符串是否在这个字符串中
print(‘ab’ in str) # 返回True
print(‘m’ in str) # 返回False -
split()分割字符串 括号里的内容为分割的标志
s=‘i love china’
print(s.split(’ ‘))
s=‘www.baidu.com’
r=s.split(’.’)
print® -
join()拼接字符串 str.join(seq)
f=‘fang’
p=’_’.join(f)
print§
print(’+’.join(f)) -
s.strip() 左右两边去空格
str=’ wo ai ni ’
print(str.strip()) -
s.lstrip() 去左边空格
print(str.lstrip()) -
s.rstrip() 去右边空格
print(str.rstrip()) -
s.upper()全部大写
str=‘I Love China’
print(str.upper()) -
s.lower()全部小写
print(str.lower()) -
s.isupper()判断是不是大写
str=‘CHINA’
print(str.isupper()) -
s.islower()判断是不是小写
print(str.islower())
x=5-2
print(x) -
x=2*‘a’ # 显示字符串的个数。两个字符串之间不能做乘法运算。
print(x)
print(6/3) # 整数或者浮点数做除法运算总会返回浮点类型
2
2.1赋值运算符
a=10 # 可以将等号右边的值赋给左边的变量
a+=3 # 等价于a=a+3 a-=3 a*=3 a/=3 a**=3
print(a)
2.2比较运算符
比较运算符,比较两个值之间的关系,总会返回一个布尔类型,关系成立返回True 不成立返回false > < => <=
r=10>10
r=10<=10
r=‘2’>‘3’ # 比较的是字符串对应的ASCII码的值 print(ord(‘1’),ord(‘5’)) 查看ASCII
r=‘a’>‘b’
print®
- 如果出现多个字符的情况下,我们的比较方式是对位比较。如果对位比较出结果,则直接返回结果。
- 否则去以下一位对位比较,指导比较结果为止。
r=‘2’>‘11’
print(r)
2.3特殊的比较方式
- == 比较两个对象的值是否相等
- != 比较两个对象的值是否不等
- is 比较两个对象是否是同一个对象,比较的是对象的id
- is not 比较两个对象是否不是同一个对象,比较的是对象的id
print(20==30)
print(1!=True)
print(id(20),id(30)) # 两个值相同,但不一定是同一个对象。
print(1 is True)
2.4逻辑运算符
逻辑运算符,主要是用来做一些逻辑判断的。
-
not 逻辑非,对符号右侧的值进行非运算。
-
对于非布尔值,非运算先会将其转换为布尔值,然后再取反操作。
-
对于0,空串,none 等这些表示空性的值,都会转换为False。
a=1 # 先将1,转换为布尔值True
a=not a
print(a) -
a=None # 先将None,转换为False
a=not a
print(a)
and 逻辑与
- 逻辑与会对符号两边的值进行与运算。只有有False结果就会返回False
print(1 and False)
print(True and ‘python’) # 直接返回python
or 逻辑或
只要有True,结果就会返回True
print(False and ‘python’)
2.5非布尔值的与或运算
- 当我们对非布尔值进行与或运算的时候,python会将其当成布尔值运算,最终返回的是原值。
print(1 and 2) print(True and True) # 返回2
print(0 and 2) print(True and False) # 返回1 - 与运算是找False,如果第一个值是False,则不看第二个值,直接返回第一个值。
- 如果第一个值不是False,则直接返回第二个值。
- print(1 or 3) True or True
- print(0 or None)
- 或运算是找True,如果第一个值是True,则不看第二个值,直接返回第一个值;
- 如果第一个值不是True,则直接返回第二个值。
2.6条件运算符
print(‘python’) if True else print(‘java’) # 如果是True 则执行python值
print(‘python’) if False else print(‘java’) # 如果是False,则执行java值
练习1
利用条件运算符,求两者之间的最大值
a=100
b=10
print(a if a>b else b)
print(‘a的值大,值为%d’%a) if a>b else print(‘b的值大,值为%d’%b)
练习2
利用条件运算符,求三者之间的最大值
a=1003
b=50
c=102
print(a if a>b and a>c else b if b>c else c )