前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python(五)——运算符、字符串、转义字符

python(五)——运算符、字符串、转义字符

作者头像
用户7886150
修改2020-11-27 14:32:28
1.2K0
修改2020-11-27 14:32:28
举报
文章被收录于专栏:bit哲学院

参考链接: Python中==和is运算符之间的区别

目录 

运算符 

位运算符: 

逻辑与运算符  

成员运算符   in  和 not in  

身份运算符  is 和 is not 

运算符优先级 

字符串 

python中字符串可以进行乘法运算 

访问字符串中某一个字符 

截取字符串 

判断一个字符串是否在另一个字符串内 

判断是否为闰年小算法: 

eval(str)      将字符串str当成有效的表达式来求值并返回计算结果,不能有英文字符 

len(str)       返回字符串的长度(字符个数) 

str.lower()     转换字符串中的大写字母为小写字母 

str.upper()        转换字符串中的小写字母为大写字母 

str.swapcase()      转换字符串中的大写字母为小写字母,转换字符串中的小写字母为大写字母 

str.capitalize()      转换字符串,使得只有首字母为大写 

str.title()      每个单词的首字母大写 

str.center(width,fillchar)   将str放在居中的位置,fillchar为填充的位置 

str.count('str1')    计算str中有多少个str1 

str.find('str1',strat,end)   从左往右检测str1字符串是否包含在str字符串中,可以指定范围。得到的结果是第一次出现str1的下标 

str.index(str1,start,end)   和find方法一样,区别是str1不存在时会报错 

str.lstrip()   截取掉左侧指定的字符,默认位空格 

str.strip()  截取掉两侧指定的字符,默认为空格 

split(str="")截取字符串 

splitlines() 按照('\t','\t\n','\n')分隔 

replace(oldstr,newstr,count)字符串替换 

startswitch(str,start=0,end=len(str)) 在给定范围内判断是否是以给定str为开头的 

isalpha() 如果字符串中至少有一个字符且所有字符都是字母返回true 

isalnum() 如果字符串中至少有一个字符且所有字符都是字母或者数字返回true 

isdigit()  如果字符串中只包含数字则返回true  

格式化输出 

转义字符\ 

换行符\n 

制表符\t 

python允许用r表示内部的字符串默认不转义 

运算符 

位运算符: 

按位运算符是把数字看出二进制数来进行计算 

& 按位与运算符    print(5 & 7)   结果为5 

1 0 1 

1 1 1        相应位数都为1才为1,否则为0 

------ 

1 0 1 

| 按位或运算符    print(5 | 7)   结果为7                       相应位数有一个为 1 时,就为 1 

^ 按位异或运算符  print(5 ^ 7)  结果为 2                 相应位数不同时,才为 1 

~ 按位取反运算符  print( ~5)  结果为-6     每个数据位取反 

<< 左移动运算符   各二进制位向左各移动若干位    

print(5<<1)    10              101  --》  1010 

>> 右移动运算符   各二进制位向右各移动若干位    

print(5>>1)    2           101 ——》 10 

逻辑与运算符   

and  : 表达式1  and  表达式2 

表达式中有一个为假,则全部为假 

or  :  表达式1  or 表达式2        表达式全为假时,才为假 

not : not 表达式      如果表达式为真,则整体逻辑非表达式为假 

成员运算符   in  和 not in  

in :如果在指定的序列中找到值返回True,否则返回False 

not in:如果在指定的序列中找到值返回False,否则返回True 

身份运算符  is 和 is not 

is:判断两个标识符是不是引用同一个对象 

is not :判断两个标识符是不是引用不同对象 

运算符优先级 

** 

~ + - 正负号(一元加减) 

*  /  %  // 

+  - 

>>    << 

^  | 

<=  <  >  >= 

==   != 

=   %=   /=   +=   -= 

is   is not 

in   not in 

not  or   and 

字符串 

字符串是以单引号或双引号括起来的任意文本,字符串不可变 

python中字符串可以进行乘法运算 

a = "very good"

print(a * 3) 

访问字符串中某一个字符 

通过索引字符下标查找字符,索引从0开始,字符串名[下标] 

a = "very good"

print(a[3]) 

注意:不能使用a[3] = k这种方法去改变字符串,因为字符串不可变  

截取字符串 

字符串[n : m],截取n到m-1之间的字符 ,如果从头开始,n可以不填 

a = "very good"

print(a[2 : 6]) 

判断一个字符串是否在另一个字符串内 

a = "very good"

print("good" in a) 

判断是否为闰年小算法: 

a = int(input("请输入年份:"))

if (a % 4 == 0 and a % 100 != 0) or a % 400 == 0:

    print("是闰年")

else:

    print("不是闰年") 

eval(str)      将字符串str当成有效的表达式来求值并返回计算结果,不能有英文字符 

print(eval("123+23")) 

len(str)       返回字符串的长度(字符个数) 

print(len("jjjj"))       4 

str.lower()     转换字符串中的大写字母为小写字母 

print("AbCDef".lower()) 

str.upper()        转换字符串中的小写字母为大写字母 

print("AbCDef".upper()) 

str.swapcase()      转换字符串中的大写字母为小写字母,转换字符串中的小写字母为大写字母 

print("AbCDef".swapcase()) 

str.capitalize()      转换字符串,使得只有首字母为大写 

print("AbCDef".capitalize()) 

str.title()      每个单词的首字母大写 

print("AbCDef good a man real".title()) 

str.center(width,fillchar)   将str放在居中的位置,fillchar为填充的位置 

print("good a man real".center(30,'*')) 

print("good a man real".ljust(30,"*")) 

print("good a man real".rjust(30,"*")) 

str.count('str1')    计算str中有多少个str1 

print("good a man real".count('a')) 

print("good a man real".count('a',8,))   从第8位到结尾有多少个a,可以指定一个范围

str.find('str1',strat,end)   从左往右检测str1字符串是否包含在str字符串中,可以指定范围。得到的结果是第一次出现str1的下标 

print("good a man real".find('a',8,14)) 

str.rfind('str1',strat,end)   从右往左 

str.index(str1,start,end)   和find方法一样,区别是str1不存在时会报错 

print("goa man real".find('mxn',0,14))         

print("goa man real".index('mxn',0,14))            

str.lstrip()   截取掉左侧指定的字符,默认位空格 

print("    goa man real".lstrip()) 

str.rstrip()   截取掉右侧指定的字符,默认位空格 

str.strip()  截取掉两侧指定的字符,默认为空格 

print("********goa man ***real****".strip('*')) 

split(str="")截取字符串 

以str为分隔符截取字符串 

str = "a man is   ajjfl kk"

print(str.split(" ")) 

splitlines() 按照('\t','\t\n','\n')分隔 

str = """ajsadjajsk

gdggjij

asfijijjimr

"""

print(str.splitlines()) 

replace(oldstr,newstr,count)字符串替换 

用newstr去替换oldstr,默认是全部替换,如果输了count,就替换前面count个oldstr 

str = "a good man old man"

str1 =str.replace("man","woman",1)

print(str1) 

startswitch(str,start=0,end=len(str)) 在给定范围内判断是否是以给定str为开头的 

start默认是开头 

str = "a good man old man"

print(str.startswith("a go")) 

isalpha() 如果字符串中至少有一个字符且所有字符都是字母返回true 

str = "agoodmanoldman"

print(str.isalpha()) 

isalnum() 如果字符串中至少有一个字符且所有字符都是字母或者数字返回true 

str = "a12b34"

print(str.isalnum()) 

isdigit()  如果字符串中只包含数字则返回true  

格式化输出 

a = 10

print("the num =",a)

print("the num = %d" %(a)) 

a = 10

b = "asijifjaij"

c = 5.12

print("the num = %s , the str = %s , the float = %.3f" %(a , b , c)) 

转义字符\ 

将一些字符转换成有特殊含义的字符 

换行符\n 

\n在内存中占一个字节 

\\n的话不会换行,会打印出\n 

如果在字符串中有很多换行,用\n写在一行里不好阅读,python中允许: 

print('''

ajjjj

bkkkk

cllll

''') 

制表符\t 

python允许用r表示内部的字符串默认不转义 

print(r"\\\n\n\n\n") 

一起学习,一起进步 -.- ,如有错误,可以发评论

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档