第五章---字符串+序列转化

1."""判断回文数"""
s = "123321"
if s == s[::-1]:
    print("是回文数")
else:
    print("不是回文数")
 
2"""大小写字母变换"""
s = "DongGuangJian Dong Jian"
print(s.capitalize())  #capitalize():将字符串的第一个字母大写,其余全改为小写
print(s.casefold())  #将所有字符变为小写,比lower()更强大
print(s.lower())  #将所有字符变为小写。
print(s.title()) #所有单词以大写字母开头,其余都变为小写
print(s.upper()) #将所有小写变为大写
print(s.swapcase()) #大变小,小变大

3"""左中右对齐 width参数"""
s = "有内鬼,停止交易!"
print(s.center(20)) #居中且总长度填充到20个
print(s.ljust(20))  #左对齐总长度为20
print(s.rjust(20))  #右对齐
print(s.zfill(20))  #左边填0
print(s.center(20,"溜")) #默认以空格分隔,可以自己设置
print(s.ljust(20,"溜"))
print("520".zfill(6))   #左填0

4"""查找"""
x = "上海自来水来自海上"
x.count("海")
print(x.count("海",0,5))#在0~5范围内统计
print(x.find("海"))  #find()与index()的区别是:find()找不到时返回-1,而index()直接报错
print(x.rfind("海"))  #从右向左找
print(x.index("海")) 

5"""替换:replace(旧,新)"""
print("在吗?我在你家楼下,快点下来!".replace("在吗","想你"))
table = str.maketrans("ABCDEFG", "1234567")#制定转换规则
print("DongGuangJiang".translate(table))  #按table规则,字符串调用translate()方法进行转换:4ong7uangJiang


6"""判断:返回bool类型的值"""
x = "我爱Python"
print(x.startswith("我"))   #判断第一个字符是不是"我" = True
print(x.startswith("我爱P")) #  = True
print(x.endswith("Py"))     # = False
print(x.endswith("Py",0,4)) #可以指定范围,在0~4"我爱Py"这个范围内,结果就是True
if x.startswith(("你","我","他")): #可以用元组作为判断对象,只要有一个元素满足就返回为True
    print("对了")
s = "Dong guang Jian"
print(s.istitle())  #每个单词的首字母都为大写时为True,否则为False
print(s.isupper()) #False
print(s.upper().isupper())#True
print(s.isalpha())   #判断字符串是否全为字母组成,False 因为有空格
print("Dong guang Jian\n".isprintable()) #是否可以打印:False因为有"\n"
s = "12345"
print(s.isdecimal())#判断是否为数字
print(s.isdigit())   #判断是否为数字
print(s.isnumeric()) #各种语言的数字都能判断
import keyword
print(keyword.iskeyword("if"))#导入keyword模块后判断一个关键字是否为python内的关键字:True
print(keyword.iskeyword("python"))  #False

6"""序列"""
a = list()   #list()方法把一个可迭代的对象转化为列表,内部实现过程是通过for循环
b = 'I love FishC.com'
b = list(b)  #把字符串搞成列表
print(b)
c = (1,1,2,3,5,8,13,21)
c = list(c)  #把元组搞成列表
print(c)
a = tuple(b) #把b转化为元组
print(a)
a = str(c)   #把b转化为字符串
print(a)
max(b)   #返回序列中的最大值(字符的最大Assic码)
min(b)   #注意:min(),max()的参数数据类型必须一样:不能数字与字符混合
a = (3.14,3,3.2)
sum(a)   #对元组的元素,sum(a,b): 表示求和后还要加上b。
sorted(a)  #与列表的sort()函数效果一样
reversed(a)#与reverse()效果一样
enumerate(a)  #该方法生成一个由二元组(有两个元素的元组:(0,'D'))组成的可迭代对象
b = (1,2,3,4,5,6)
print(enumerate(b)) #enumerate()与下面的zip()类似<enumerate object at 0x000002787BB4D9D8>
print(b)       ###注意:一定不要把enumerate(),zip()赋给一个变量,直接用该变量操作会啥也打印不出来。
print(list(b)) #[(0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6)]
print(*list(b))
for each in enumerate(b):
    print(each) """:(0, 'I')
					(1, ' ')
					(2, 'l')
					(3, 'o')
					(4, 'v')
					(5, 'e')
					(6, ' ')
					(7, 'F')
					(8, 'i')
					(9, 's')
					(10, 'h')
					(11, 'c')"""
a = [1,2,3,4,5,6,7,8]
b = [4,5,6,7,8]
zip(a,b)    #一定不要赋值给一个变量,就用zip()操作,一个超级大大大坑
print(zip(a,b))#<zip object at 0x0000019383EC8908>,zip()函数返回的是一个迭代器,打印的是其内存地址。
print(list(zip(a,b))) #需要将zip()转化为list,tuple,等序列或者用下面的for循环才能输出[(1, 4), (2, 5), (3, 6), (4, 7), (5, 8)]
print(*list(zip(a,b))) #加*表示解压列表中的元素出来(1, 4) (2, 5) (3, 6) (4, 7) (5, 8)
for each in zip(a,b):
	print(each) #用for循环输出
				#(1, 4)
				#(2, 5)
				#(3, 6)
				#(4, 7)
				#(5, 8)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值