Python之字符串
admin
2023-07-07 05:42:33
0

在Python中字符串是不可变变量,对其进行切片及其中的元素复制都会报错

>>> str = "This is Python"
>>> str[0:3] = "abc"
Traceback (most recent call last):
  File "", line 1, in 
TypeError: 'str' object does not support item assignment

其常用的方法:

  • split

用法:str.split(sep=None, maxsplit=-1)

将字符串划分为序列

>>> env = "/usr/bin/python"
>>> tmp_env = env.split("/")
>>> tmp_env
['', 'usr', 'bin', 'python']


  • replace

用法:str.replace(old,new[,max])

将指定子串替换为另一个子串,并返回替换后的结果,但不会改变原String的内容

>>> str = "This are Python"
>>> rep_str = str.replace("are","is")
>>> rep_str
'This is Python'
>>> str
'This are Python'
>>> str = "This is Python,That is Great"
>>> rep_str = str.replace("is","was",2)
>>> rep_str
'Thwas was Python,That is Great'
  • find

用法:str.find(sub[, start[, end]])

在字符串中查找字串,若找到,则返回字串的第一个字符的索引,否则,返回-1

>>> str = "This is Python,Hello ,中国,您好"
>>> fd_str = str.find("is")
>>> fd_str
2
>>> str[fd_str]
'i'
>>> fd_str2 = str.find("中")
>>> str[fd_str2]
'中'
>>> str1 = "That is dog".find("G")
>>> str1
-1
  • join

用法:str.join(iterable)

合并序列的元素

>>> dirs = ['','usr','bin','python']
>>> '/'.join(dirs)
'/usr/bin/python'
>>> num = [1,2,3,4]   #合并数字列表,报错
>>> seq = '+'
>>> seq.join(num)
Traceback (most recent call last):
  File "", line 1, in 
TypeError: sequence item 0: expected str instance, int found
>>> str1 = ["A","B","C"]  #合并字符列表,OK
>>> seq = "-"
>>> seq.join(str1)
'A-B-C'
>>> str1 = "ABCDE"
>>> seq = "abcde"
>>> seq.join(str1)
'AabcdeBabcdeCabcdeDabcdeE'
  • strip

用法:str.strip([chars])

将字符串开头和末尾的空白(不包括中间的空白)删除,并返回结果

>>> "  Hello,World!".strip()
'Hello,World!'
>>> "Hello,World    ".strip()
'Hello,World'
>>> "  Hello,World   ".strip()
'Hello,World'
>>> "Hello,   World! !".strip()
'Hello,   World! !'
>>> "www.baidu.com".strip("com")
'www.baidu.'
>>> "www.baidu.com".strip(".com")
'www.baidu'


  • center

用法:str.center(width[, fillchar])

通过在两边填充字符(默认为空格)让string居中

>>> "0123456789".center(1)
'0123456789'
>>> "0123456789".center(-1)
'0123456789'
>>> "0123456789".center(10)
'0123456789'
>>> "0123456789".center(11)
' 0123456789'
>>> "0123456789".center(11,"*")
'*0123456789'
>>> "0123456789".center(12,"*")
'*0123456789*'
>>> "0123456789".center(20,"*")
'*****0123456789*****'

详细的String参数可参考官网文档:

https://docs.python.org/3.7/library/stdtypes.html?highlight=replace#str.replace

相关内容

热门资讯

我国科学家为细胞信号“导航”开... 新华社济南5月31日电(记者张力元)人体细胞犹如一座精密的通信城市,每天都有大量“指令”穿梭传递,调...
极端大风突袭哈尔滨!过山车停摆... 极目新闻记者 詹钘5月31日,受强对流天气影响,哈尔滨国际会展中心体育场相关设施受到损坏,原计划当晚...
三原电缆取得电缆接头连接用防护... 国家知识产权局信息显示,上海三原电缆附件有限公司取得一项名为“一种电缆接头连接用防护结构”的专利,授...
原创 识... 还是那句话,机圈苦大屏久已…… 虽然大屏有大屏的美,但是小屏也有小屏的俏。在大屏旗舰占据主流的手机市...
玄戒技术取得分频电路专利,实现... 国家知识产权局信息显示,北京玄戒技术有限公司取得一项名为“分频电路、分频器、射频芯片和电子设备”的专...
为什么今年香会基调明显变了 5月29日—31日在新加坡举行的第23届香格里拉对话会(简称“香会”),见证着元首引领下大国关系继续...
成本几毛钱、假驱蚊液香精兑水,... 入夏升温,蚊虫进入活跃期,驱蚊防护成为民生刚需,《财经调查》持续接到消费者投诉,他们买到的多款网红驱...
越来越多80后90后,正在丧失... 六一儿童节到来之际,朋友圈里开始出现一种熟悉的热闹。有人晒出零食礼包,有人半开玩笑地向伴侣讨礼物,还...
洋保电子取得用于低温环境的电气... 国家知识产权局信息显示,洋保电子(太仓)有限公司取得一项名为“一种用于低温环境的电气柜”的专利,授权...
中日韩飞手争霸宁波!2026无... 潮新闻客户端 记者 陈冲 通讯员 朱凝 5月31日,2026小遛·无人机竞速世界杯(中国·宁波鄞州站...