一、运算符
运算符:算术运算符、比较运算符、赋值运算符、逻辑运算符
1.比较运算符:<、 >、 >=、 <= 、== 、!=
所用比较运算符的结果都是布尔值
x>y: 比较x是否大于y,如果是结果就是Ture,否则结果是False
print(10>5)
print(6>10)
print(‘abcdef’>’bcd’) #比较字符串的大小时候,不是比较两个字符串的长度;而是从两个字符串的第一个字符开始比较,如果第一字符大于第二个字符,结果就是True否则false;如果相等就比较下一个字符。
x
2.赋值运算符:=、 +=、-=、=、/=、%=、//=、*=
所用的赋值运算符,左边都必须是变量,右边是表达式
a=20
b=a #如果a的值是基本数据类型(数字。字符串),直接将A值赋给B,如果是对象,传递的是地址
a=30
表达式:10,a,10+a、10>20、等不能作为表达式:
a+10
print(a)
a+=10 #a=a+10 #赋值后才能改变值
print(a)
a+=1 #a=a+1
print(a)
a-=10 #a=a-10
print(a)
a*=2 #a=a*2
print(a)
a/=2
print(a)
a//=2 #a=a//2
print(a)
a**=2 #a=a**2
print(a)
3.逻辑运算符:and(与) ,or(或) ,not(非)
逻辑运算中的表达式的值都是布尔值
表达式1 and 表达式2:两个表达式的值都为True,结果才是True.其它为False
and(并且) 同时满足条件
print(True and True)
print(True and False)
print(False and True )
print(False and False)
age=40
face=90
要求:年龄大于18并且小于50,颜值不能低于80
result = age>18 and age<50 and face>=80
print(result)
表达式1 or 表达式2 :两个表达式值都为False,结果为False,否则为True
or 表示(或者)
print(True or True)
print(True or False)
print(False or True)
print(False or False)
grade=8.0
score=80
奖学金要求:成绩大于8.5 或者操评大于90
result= grade>8.5 or score>90
print(result)
奖学金要求:1.成绩大于9.7 2.成绩8.5-9.7,操评分大于85
运算表达式中,加()可以改变运算顺序
result=grade>9.7 or (8.5 <=grade<=9.7 and score>85)
print(result)
逻辑非(not),not 表达式:如果表达式的值为真(True),结果就是False;
print(not True)
print(not False)
及格要求:成绩不小于6
grade=5 #变量赋值的时候,后面赋值会覆盖前面的值
result=not(grade<6)
print(result)
进入游乐场年龄的要求;不大于12岁,并且不小于2岁
age=20
result=not(age>12) and not(age<2)
print(result)
name=’张三’
age=18
name=’张三’
age=18
二、运算符的优先级
赋值的运算符的优先级<逻辑运算符<比较运算符<加减<乘、除、取余、整除、幂运算< +(正号)、-(负号)
可以加括号改变运算的运算顺序(遇到括号就先算括号里面的)
result=True and False or False
print(result)
result=False or True and True
print(result)
三、字符串
由单引号或者双引号括起来的文本
‘abcd’
‘212’
‘–=+asd2’
‘中文’
1.python的字符串都是Unicode字符串
Unicode编码:就是一种对字符串的编码方式(将字符编码成对应的数字,方便计算机存储)
Unicode编码又叫万国码,支持目前几乎所有的语言文字编码
Unicode(包含ASCII码)
数据存储到计算机中是以2进制的形式存的(二进制数)
将Unicode码转换成字符
char=chr(0x4e13)
print(char)
将字符转换成Unicode码
code=ord(‘余’)
print(code)
print(chr(20313))
字符串比较大小的时候,实际就是比字符的Unicode编码大小
2.字符串的长度
就是字符串中字符的个数
‘abc’#长度为3
’ yu’#长度为3
len(字符串):获取字符串的长度
star1=’你好,python’
lngth=len(star1)
print(lngth)
3.获取字符/字串
str1=’hello,python’
a.获取某一个字符
格式:字符串变量[下标]下标:从0开始的数字,代表的是某一个字符在字符中的偏移量(位置)(范围:0~字符长度减1
print(str1[0]) #获取第0个字符
print(str1[5]) #获取第5个字符
下标也可以是负数,
print(str1[-1]) #获取的是倒数第一字符
print(str1[-2]) #获取的是倒数第二个字符
print(str1[len(str1)-1])#获取最后一个字符
b.获取字符串中某一个部分的字母(获取子串)
格式;字符串变量评[开始下标:结束下标]–>获取从开始下标到结束下标前的所有字符
str1=’hello,python!’
注意:开始下标对应的字符是可以取到的,结束下标字符是取不到的
print(str1[1:4]) #获取从下标1开始到下标是3的所有字符
print(str1[6:10])#获取从下标6开始到9的字符
开始的下标不写,默认就是0
print(str1[:5]) #获取从开始到下标是4为止的所用字符
结束下标不写,就会取到最后一个字符
print(str1[-4:])#
如果结束下标在开始下标的前面,就会取不到字符
print(str1[5:1]) #不能倒着取
print(str1[:])#全部取出
4.字符串的运算符:+、*、in、not in
+ :字符串中的+操作,就是字的链接
str2=’aaa’+’bbb’
print(str2)
str2+=’!’
print(str2)
* : 字符串中的*操作,就是字符串重复多少次
str1=’aaa’*10
print(str1)
字符1 in 字符2 :判断字符串2里面是否包含字符1
str1=’Hello’
print(‘He’ in str1) #判断str1里面是否包含He
字符串1 not in 字符串2 :判断字符串2里面是否没有包含字符串1
print(‘He’ not in str1)
四、函数的使用
print()函数可以打打印括号中的任何内容
调用print函数打印完后会换行
print(10)
str1=’aaa’
print(str1)
同时打印多个内容(多个内容用逗号隔开);打印的时候,多个内容之间是用空格隔开的
print(‘aa’,100,str1)
1.格式化输出
print(‘%s %d’%(var1,var2)):输出字符串的时候,在字符串中使用字符格式符表示变化的内容。然后%后面的括号里面,依次使用表达式给前面的字符串格式赋值
name=’张三’
age=18
我是XXX,今年xx岁
print(‘我是%s,今年%d岁’%(name,age))
%s:字符串 %d:整数 %f;浮点数 %c:字符
%f
print(‘余额:%f万元’%(10.25))
print(‘余额:%.1f万元’%(10.25))# %.1 保留小数点后一位
2.python 中的字符,就是长度是1的字符串
print(‘%c’%(‘a’)) #打印的是 a
print(‘%c’%(97)) #打印的是 a
%o
print (‘%o’%(10))
%X / %x
print(‘%x,%X’%(15,15)) #打印出来分别是f 和 F
%p:打印变量地址
name=’小明’
print(‘%o’%id(name))
设置print函数的sep参数,可以改变print函数在同时打印多个内容时的分隔符(默认是空格)
name=’张三’
age=18
我是XXX,今年xx岁
注意:加号两边只能是数字或者是字符串,不能一样一个
print(‘我是’,name,”今年”,age,’岁’,sep=”)
print(‘hello’,end=’ ‘) #打印是 hello world
print(‘world’)
五、字符串的内置函数
**1.**capitalize() 将字符串的第一个字符转换为大写(不会改变原来的字符串,而是返回一个新的字符串)
str1=’student’
newstr1=str1.capitalize()
print(str1,newstr1)
**2.**title() 将字符串中的每个单词首字母变成大写(不会改变原来的字符,而是返回一个新字符)
newstr1=str1.title()
print(str1,newstr1)
**3.**center (width ,fillchar)将字符串变成指定的长度,并且原字符内容居中,剩余的字符用fillchar填充
str1=’abc’
newstr=str1.center(11,’%’)
print(newstr)