字符串和字符

字符串## 一·字符串和字符# 1.什么是字符串(str)"""""容器型数据类型:将''或者""或者''''''或者“”“”“”作为容器标志,引号中的每个符号就是字符串的元素(''''''和“”“”“”在表示字符串内容的时候换行可以不使用转义字符,而是直接按回车)字符串不可变(不支持增删改);字符串有序(支持下标操作)元素:引号中的单独的每个符号都是字符串的元素(又叫字符),字符可以是任何符号。 字符分为两类:普通字符(表示符号本身字符)、转义字符(符号的存在具有特殊的功能和意义) """'a,b,c'str1='abc\n123'#2.字符串的元素 - 字符"""字符分为普通字符和转义字符两种转义字符 - 在特定符号前加\让符号具备特殊的功能,常见转义字符如下:\n - 换行\t - 水平制表符(相当于tab键的功能)\' - 表示一个普通的单引号\" - 表示一个普通的双引号\\ - 表示一个普通的反斜杠一个转义符的长度是1"""# \u4位的十六进制数 - 编码字符str2='\tabc\n123'print(str2)str3='abc\\name\u4eff'print(str3)#3.字符编码"""计算机只能存储数字(而且保存的数字的二进制的补码),文字符号是无法直接存储到计算机中的。为了能够让计算机具备存储文字符号的能力,我们给所有的文字符号对应的一个固定的数字,每次存储文字时把对应的符号存储起来,符号对应的数字就是符号的编码值2.编码表 - 保存符号和数字对应关系的表1)ASCII码表a.总共128个字符(美国符号)b.数字在字母的前面;大写字母在小写字母前面;大小写字母直接有其他符号2)Uni code编码表(Python)a.Unicode编码表是对ASCLL表的扩展,包含了世界上所有国家所有民族所有语言的符号(又称万国码)b.中文范围:4e00~9fa53)编码值在Python中的使用a.chr函数:chr(编码值) - 获取编码值对应的字符b.ord函数:ord(字符) - 获取字符的编码值c.编码字符:\u4e00(4e00就是一个16进制的编码值)注意:python中需要字符的地方都必须使用长度为1的字符串赋值"""'a' - 97# 1)chrprint(chr(97))print(chr(35),chr(0x23))print(chr(04e00))num=0for x in range(0x4e00,0x0fa5+1): print(chr(x),end-'') num+=1 if num %30==0: print()#2)ordprint(ord('余'),ord('婷'))#练习:将大写字母转换成对应的小写字母#A->ac='M'new_c=chr(ord(c)+32)print(new_c)## 二·字符串相关操作#1,查 - 获取字符串的字符#字符串获取字符的语法和列表获取元素的衣服一模一样的’;#3.比较运算符#2)比较大小#两个字符串毕竟大小,比较的是第一队=对不相等的字符的编码值的大小"""""""""char=?判断是否是数字字符:'0' <=char<='9'"""#练习2:#1)统计中文字符的个数#2)大隐字符串值所有的数字字符#3)提取字符串中所有的字母str3='你好loe--23=sks;M9JHkyu是-12山卡拉'count=0for x in str3: if '\4eoo' <='\u9fa5': count+=1print('中文个数:',count)#4. in 和 not inprint ('abc' in 'abc123')#5.r语法(r-strig) - 在字符串的前面加r/R#如果在字符串前面加r,那么字符串中所有的转义字符的功能都会消失(阻止转义)str34=r'abc\n123'path=r'c:\users\name\test\a.txt'print(path)#6.相关函数"""len(字符串)str(数据) - 将数据转换成字符串(任何类型的数据都可以转换成字符串;转换的时候是在数值的打印值外边加引号,eval(字符串)- 去掉字符最外面的引号,获取数据或者计算表达式结果"""str(100) #'100'str({'a':10,'b':20}) #"{'a':10,'b':20}"eval(100) #100eval('[10,20,30]') #[10,20,30]## 三·字符串相关方法#1.join# 字符串.join(序列) - 将序列中的元素用指定的字符串拼接(序列中的元素必须是字符串)list1=['abc','name','123','sdf']result=''.join(list1)print(result)result1+=.join(list1)print(result1)result2='123'.join('abc')print(result2)list2=['abc',100,True,'hello']result3=''.join(str(x) for x in list2)print(result3)# 练习2:将list2中所有的字符串拼接成一个字符串list2 = ['abc', 100, True, 'hello'] # abchelloresult4=''.join([x for x in list2 if type(x)==str])print(result4)#2.count#字符串1.count(字符串2) - 统计字符串1中字符串2出现的次数message = 'how are you? i am fine! thank you! and you?'result5=message.count('you')print(result5)#3.index(报错)/find(不报错,返回-1)# 字符串1.index(字符串2) - 获取字符串第一次出现在字符串1中的位置(位置是从0开始的下标值)# rindex/rfind - 是从右往左找,找到的是最后一个字符串2result6=message.index('you')print(result6)#4.split# 字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串1进行切割#字符串1.split(字符串2,N) - 最多切N次#注意:无论切割点怎么分布,切割后小字串符的个数都是切割点的数量加1message = 'mnabc123abcxyzabcoop'result7=message.split('abc')print(result7)#5.replace#字符串1.replace(字符串2,字符串3) - 将字符串1中所有的字符串2都替换成1字符串3#字符串1.replace(字符串2,字符串3,N) - 只替换前N个#6.center\rjust\ljust\zfill#字符串1.center(长度,填充字符)#字符串1.zfill(长度)==字符串1.rjust(长度,0)str1='abc'print(str1.center(9,'o'))#7.strip/rstrip/lstrip#strip-同时去掉字符串两边的所有的空白str2='\t abc 123 \n'print(str2.strip())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值