1. 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map',
  2.  
  3. 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric',
  4.  
  5. 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition',
    'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip',
    'swapcase', 'title', 'translate', 'upper', 'zfill'

字符串一旦创建,不可修改,一旦修改或者拼接,都会造成重新生成字符串,因为内存存数据是一个挨着一个存的,如果增加一个字符串的话,之前的老位置只有一个地方,不够,这是原理性的东西,在其他语言里面也一样

7个必须要背会的方法

join

split

find

strip

upper

lower

replace

4个必须会的灰魔法

len

for循环

索引

切片

1.字符串  str   所有的功能都放在 str里面了

n1 = "frank"  n2 = 'root'  n3 = """eric"""   n4 = '''tony'''

双引号 单引号 三个双引号  三个单引号 引起来的都是字符串

字符串的加法

  1. >>> n1 = "frank"
  2.  
  3. >>> n2 = "sb"
  4.  
  5. >>> n3 = "db"
  6.  
  7. >>> n4 = n1 + n2 + n3
  8.  
  9. >>> print (n4)
  10.  
  11. franksbdb
  12.  
  13. >>>
  14.  
  15. 字符串的乘法
  16.  
  17. >>> n1 = "frank"
  18.  
  19. >>> n3 = n1 * 6
  20.  
  21. >>> print (n3)
  22.  
  23. frankfrankfrankfrankfrankfrank

字符串类型的魔法,有太多种了,下面列举几个常用的

  1. 1.capitalize()   魔法是首字母大写 kæpɪtəlaɪz] 用大写字母写
  1. name = "gouguoqi"
  2. v = name.capitalize()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. Gouguoqi

2.casefold()

3.lower()  这2个魔法都是把字符串中的大写字母变成小写

casefold 最牛逼,它可以把未知的字符串的的对应关系也能变小写,lower只能我们常用的英文变小写

upper 使字符串全部变成大写

  1. name = "GOGUoQi"
  2. v1 = name.casefold()
  3. print (v1)
  4. v2 = name.lower()
  5. print (v2)
  6.  
  7. C:\python35\python3.exe D:/pyproject/day10/1.py
  8.  
  9. goguoqi
  10.  
  11. goguoqi
  1. 4.center(self, width, fillchar=None)
  1.    ljust (左对齐)  rjust(右对齐)相对应

self 这个可以忽略,width,这种后面必须要带一个值,就相当于买东西必须要带钱,fillchar=None表示默认是None    sub代表子序列

#center功能是将字符串居中显示
#20 代表宽度,- 代表的是空余的地方用什么填充,只能是一个字符,默认是空格

  1. name = "gouguoqi"
  2. v = name.center(20,"-")
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. ------gouguoqi------
  1. 5.count(self, sub, start=None, end=None)  [kaʊnt] 计数

计算一个指定的字符出现了几次,可以是多个字符

sub代表子序列

专业说法:在字符串中寻找子序列出现的次数,可以指定从第几个字符串开始,第几个字符串结束的范围,0为第一个字符 比如 1,4  表示的是从 第二个字符到第第五个字符之间的范围,第五个字符不算

  1. name = "gouguoqi"
  2. v = name.count("u")
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. 2
  8.  
  9. name = "gouguoqigougoqi"
  10. v = name.count("go")
  11. print (v)
  12.  
  13. C:\python35\python3.exe D:/pyproject/day10/1.py
  14.  
  15. 3
 

从第3个位置到第5个位置中u这个字符出现了几次,不算第五个位置,因为是个区间

黄色为区间范围内

  1. name = "tyuiop"
  2. v = name.count("u",2,4)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. 1

6.encode

7.decode

  1. 8.endswith(self, suffix, start=None, end=None)

以什么结尾,判断结果是否为真或者假

  1. name = "beiye"
  2. v = name.endswith("e")
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. True

从1到3的范围内,以i结尾,为真

0为第一个字符,因为是区间的概念,所以第四个字符不算,就是第四个字符往左的

  1. name = "beiye"
  2. v = name.endswith("i",1,3)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. True
  1. 9.starswith(self, suffix, start=None, end=None)

以什么字符串开头  判断结果是否为真或者假

  1. name = "beiye"
  2. v = name.startswith("b")
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. True

0为第一个字符,在第二个字符和第四个字符这个范围,是i开头,返回正确

  1. name = "beiye"
  2. v = name.startswith("i",2,4)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. True
  1. 10.find(self, sub, start=None, end=None) *****重要

还有一个index的方法,不过这个找不到的话程序直接崩溃了,所以肯定是不用的,find找不到是返回-1

从开始往后找,找到第一个字符之后,获取其位置就不往后找了

  1. name = "beiyebeiyet"
  2. v = name.find("t")
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. 10

在2到6的区间内找t这个子序列,因为找不到所以返回   -1

  1. name = "beiyebeiyet"
  2. v = name.find("t",2,6)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. -1
  1. 11.format(self, *args, **kwargs)  fɔ:mæt]  格式*****重要

格式化,将一个字符串中的占位符替换为指定的值

  1. test = "i am {name},age {a}"
  2. print (test)
  3. v = test.format(name='gouguoqi',a='28')
  4. print (v)
  5.  
  6. C:\python35\python3.exe D:/pyproject/day10/1.py
  7.  
  8. i am {name},age {a}
  9.  
  10. i am gouguoqi,age 28

用字典的方式传进去,前面得加**才行

  1. test = "i am {name},age {a}"
  2. print (test)
  3. v = test.format(**{"name":"gouguoqi","a":28})
  4. print (v)
  5.  
  6. C:\python35\python3.exe D:/pyproject/day12列表/dict-way.py
  7.  
  8. i am {name},age {a}
  9.  
  10. i am gouguoqi,age 28

如果中括号里面什么都不写,写{0} {1} {2},代表第一个占位符,第二个占位符,第三个占位符

下面就不用再写name=啥了。直接写值就行了,写3个值,就对应上面3个占位符,依次从左向右

  1. test = "i am {0} age {1} weight {2}"
  2. print (test)
  3. v = test.format('gouguoqi','28','90kg')
  4. print (v)
  5.  
  6. C:\python35\python3.exe D:/pyproject/day10/1.py
  7.  
  8. i am {0} age {1} weight {2}
  9.  
  10. i am gouguoqi age 28 weight 90kg
  1. test = "猥琐的{0},最喜欢在{1}地方干{2}"
  2. name = input("请输入你的名字: ")
  3. place = input("请输入你经常去的地方: ")
  4. like = input("请输入你平时的爱好: ")
  5. v = test.format(name,place,like)
  6. print(v)
  7.  
  8. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  9.  
  10. 请输入你的名字: 修电脑
  11.  
  12. 请输入你经常去的地方: 网吧
  13.  
  14. 请输入你平时的爱好: 撸管
  15.  
  16. 猥琐的修电脑,最喜欢在网吧地方干撸管
  1. 12.format_map(self, mapping)

format_map也是格式化,传入的值必须是这样的格式{ "name": 'gouguqi',"a": 28 }

这个格式就是一个字典格式

  1. test = "i am {name} age {a}"
  2. print (test)
  3. v = test.format_map({ "name": 'gouguqi',"a": 28 })
  4. print (v)
  5.  
  6. C:\python35\python3.exe D:/pyproject/day10/1.py
  7.  
  8. i am {name} age {a}
  9.  
  10. i am gouguqi age 28

(学了后面才发现,这里的参数就是字典类型)

(v = test.format(**{"name":"gouguoqi","a":28}))而上面的format用字典的方式得加**

  1. 13.isalnum(self)

判断字符串中只能由字母和数字,不能有特殊符号

  1. test = "4567ghjkk_!"
  2. v = test.isalnum()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day10/1.py
  6.  
  7. False
  8.  
  9. test = "4567ghjkkKP"
  10. v = test.isalnum()
  11. print (v)
  12.  
  13. C:\python35\python3.exe D:/pyproject/day10/1.py
  14.  
  15. True
  1. 14.isalpha(self)

Return True if all characters in S are alphabetic(字母)
and there is at least one character(至少一个字母) in S, False otherwise.

翻译结果:字符串里面都是字母,并且至少是一个字母,结果就为真,(汉字也可以)其他情况为假

  1. S = "2"
  2. v = S.isalpha()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False 
  1. S = "IIKk9123mm"
  2. v = S.isalpha()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False
  1. S = "IIKkkkkkmnbvgghjj"
  2. v = S.isalpha()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True
  1. S = "IIKkkkkkmn汉字ghjj"
  2. v = S.isalpha()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True
  1. 15.isdecimal(self)  desɪml] 十进制的
  1. 判断当前字符串是否为数字

Return True if there are only decimal characters (十进制字符) in S,
False otherwise.

  1. S = "65434334000000000"
  2. v = S.isdecimal()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True
  1. S = "66k"
  2. v = S.isdecimal()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False
  1. 16.isdigit(self)  dɪdʒɪt] 数字的
  1. 判断字符串是否是数字,特殊的数字也可以
  1. 这个比isdecimal更牛逼些,一些特殊的数字也返回True

Return True if all characters in S are digits(数字)
and there is at least one character in S, False otherwise.

  1. S = "66①56"
  2. v1 = S.isdecimal()
  3. v2 = S.isdigit()
  4. print (v1,v2)
  5.  
  6. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  7.  
  8. False True
  1. 17.isnumeric(self  [nju:'merɪk]  数字的

判断如果是数字的数值的就返回为真,比isdigit isdecimal 更牛逼,这个也能识别特殊的数值,也能识别中,isdigit能识别特殊的值但是不支持中文 ,isdecimal只能是十进制的,特殊的不行

以后工作中常用的就是isdecimal,因为这就是判断十进制数字的,特殊的值和中文并不能做运算,所以不常用

Return True if there are only numeric(数字的,数值的) characters in S,
False otherwise

  1. S = "66①56"
  2. v1 = S.isdecimal()
  3. v2 = S.isdigit()
  4. v3 = S.isnumeric()
  5. print (v1,v2,v3)
  6.  
  7. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  8.  
  9. False True True
  1. S = "二"
  2. v1 = S.isdecimal()
  3. v2 = S.isdigit()
  4. v3 = S.isnumeric()
  5. print (v1,v2,v3)
  6.  
  7. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  8.  
  9. False False True
  1. 18.isprintable(self)  prɪntəbl] 可打印的

如果我们能看到真实的可以打印出来的东西就是True

像\t  \n这种我们肉眼不可显示的东西是打印不出来的,所以在包含这些的时候就是false

Return True if all characters in S are considered
printable in repr() or S is empty, False otherwis

  1. S = " 556546 ___ 二&*、"
  2. v = S.isprintable()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True
  1. S = " 556546sd\tf"
  2. v = S.isprintable()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False
  8.  
  9. S = " 55\n6546sdf"
  10. v = S.isprintable()
  11. print (v)
  12.  
  13. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  14.  
  15. False
  1. 19.isspace(self)
  1. 判断你的字符是否全部是空格,一个空格也行,多个空格也行,如果全部是空格就为真,不全部是空格就是假,什么都不写也为假

Return True if all characters in S are whitespace
and there is at least one character in S, False otherwise

一个空格

  1. S = " "
  2. v = S.isspace()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True

多个空格为真

  1. S = " "
  2. v = S.isspace()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True
  1. 什么都不写为假
  2.  
  3. S = ""
  4. v = S.isspace()
  5. print (v)
  6.  
  7. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  8.  
  9. False
  1. 20.istitle (self)   taɪtl]  标题
  1. 判断知否是标题(标题是每个字符串的首字母大写)
  1. S = "follow uncased characters and lowercase characters only cased on"
  2. v1 = S.istitle()
  3. print (v1)
  4. v2 = S.title() 这个方法是把字符串中的首字母变为大写,也就是转换成标题
  5. print (v2)
  6. v3 = v2.istitle()
  7. print (v3)
  8.  
  9. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  10.  
  11. False 判断v1 结果是v1 不是标题
  12.  
  13. Follow Uncased Characters And Lowercase Characters Only Cased Onv1转化成标题
  14.  
  15. True 再次判断v3,结果是标题了

21.title(self)

这个方法是可以把字符串的首字母变成大写,也就是变成标题

  1. S = "my name is gouguoqi"
  2. v = S.title()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. My Name Is Gouguoqi
  1. 22.isupper(self)     uppercase ['ʌpəˌkeɪs] 大写字母
  1. 判断全部是大写字母才是真,至少有一个字符,否则为假

Return True if all cased characters in S are uppercase  and there is
at least one cased character in S, False otherwise

  1. S = "GOUGUOQI"
  2. v = S.isupper()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True

其中有一个字符为小写,结果就是false了

  1. S = "GOUgUOQI"
  2. v = S.isupper()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False
  1. 23.islower(self)   lowercase  小写字母
  1. 判断全部是小写字母才是真,至少有一个字符,否则为假

Return True if all cased characters in S are lowercase and there is
at least one cased character in S, False otherwise

  1. S = "woaini"
  2. v = S.islower()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True

也可以包含特殊符号和数字

  1. S = "woaini*&^%$#@!998"
  2. v = S.islower()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. True

就是不能有大写字母,有大写字母就为假

  1. S = "woaini*&^%$#@!998Y"
  2. v = S.islower()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. False
  1. 24.join(self, iterable)*****非常重要的方法

将字符串中的每个元素按照指定分隔符进行拼接

Return a string which is the concatenation of the strings in the
iterable.  The separator between elements is S

separato    [ˈsepəreɪtə(r)]  分隔符

  1. S = "我爱学习"
  2. v = " ".join(S)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  1. S = "我爱学习"
  2. v = "_".join(S)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ___
  1. 25.ljust(self, width, fillchar=None) left 左对齐

给字符串一个宽度,使字符串左对齐,右边用指定的字符填满,默认是空格

Return S left-justified in a Unicode string of length width. Padding is
done using the specified fill  (使什么填满)character (default is a space).

  1. S = "woaini"
  2. v = S.ljust(20)
  3. print (v
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. woaini        

用*来填充空白处

  1. S = "woaini"
  2. v = S.ljust(20,'*')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. woaini**************

26.rjust   right 右对齐

  1. S = "woaini"
  2. v = S.rjust(20)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. woaini

用*来填充空白处

  1. S = "woaini"
  2. v = S.rjust(20,'*')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. **************woaini

27.lower

使字符串变成小写

  1. S = "GouGuoQi"
  2. v = S.lower()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gouguoqi

28.upper使字符串变成大写

  1. S = "gouguoqi"
  2. v = S.upper()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. GOUGUOQI
  1. 29. lstrip   去除字符左边的空格(包括\t \n),还可以去除指定的字符串
  1. 移除指定字符的时候,按照字符最多匹配
  1. 也叫按照最长公共子序列匹配,什么是最长公共子序列
  1. beiye
  1. woaiye          iye就是最长公共子序列

Return a copy of the string S with leading whitespace removed.
If chars is given and not None, remove characters in chars instead.

  1. given  指定的
  1. S = " gouguoqi "
  2. v = S.lstrip()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gouguoqi

去除左边的g

  1. S = "gouguoqi "
  2. v = S.lstrip('g')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ouguoqi
  1. 30.rstrip  去除字符串右边的空格 (包括\t \n)还可以去除指定的字符串
  1. S = " gouguoqi "
  2. v = S.rstrip()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gouguoqi

去除右边的qi

  1. S = "gouguoqi"
  2. v = S.rstrip('qi')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gouguo
  1. 31.strip    *****重要
  1. 去除字符串左右两边的空格(包括\t \n)还可以去除指定的字符串
  1. S = " goug uoqi "
  2. v = S.strip()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. goug uoqi
  8.  
  9. 去除开头和结尾
  10.  
  11. S = "gouguoqi"
  12. v = S.strip('goi')
  13. print (v)
  14.  
  15. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  16.  
  17. uguoq
  1. 32.maketrans(self, *args, **kwargs)
  1. 33.translate(self, table)

32和33是一起用的,首先得创建一个对应关系

S1和S的字符是一一对应的

v是定义了一个字符串的变量

m是创建了一个对应关系

n是v这个变量用translate的这个方法,以对应关系是("aeiou","12345")进行替换

意思是字符串中的a会用1替换,e会用2替换,i会用3替换,o用4替换,u用5替换

  1. # S = "aeiou"
  2. # S1 = "12345"
  3. v = "asdfifkjsedfkom,s.u.sdfasdfa"
  4. m = str.maketrans("aeiou","12345")
  5. n = v.translate(m)
  6. print (n)
  7.  
  8. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  9.  
  10. 1sdf3fkjs2dfk4m,s.5.sdf1sdf1
  1. 34. partition(self, sep)  [pɑ:ˈtɪʃn] 分割,分开 *****(会用到)

用指定的字符分割,找到第一个指定的分割字符之后就不再继续找了,直接把字符串分成3部分,第二部分是分割字符本身,剩下的就是一组,开头是一组,这个方法只能把字符串分割成3份

  1. S = "tesdfsffgbnhjjsghj"
  2. v = S.partition('s')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ('te', 's', 'dfsffgbnhjjsghj')
  1. 35. rpartition  从字符串右边开始以指定的字符分割符进行分割
  1. 也是只能分割成3
  1. S = "tesdfsffgbnhjjsghj"
  2. # v = S.partition('s')
  3. # print (v)
  4. v1 = S.rpartition('s')
  5. print (v1)
  6.  
  7. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  8.  
  9. ('tesdfsffgbnhjj', 's', 'ghj')

36.split      [splɪt]  分裂 分开   *****重要

不加参数默认是以指定的分割字符分割成n份,但是不显示分割字符

  1. S = "tesdfsffgbnhjjsghj"
  2. v2 = S.split('s')
  3. print (v2)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ['te', 'df', 'ffgbnhjj', 'ghj']

加了一个参数2,代表以s这个字符为分隔符,进行分割2次操作,后面就不分割了

如果是3的话,就是分割3次,后面就不分割了

  1. S = "tesdfsffgbnhjjsghj"
  2. v2 = S.split('s',2)
  3. print (v2)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ['te', 'df', 'ffgbnhjjsghj']

37. rsplit    从字符串右边开始,以指定的分割字符串进行分割,不加参数默认是以指定的分割字符分割成n份,但是不显示分割字符,跟split用法一致,只不过这个是从右边开始

  1. S = "tesdfsffgbnhjjsghj"
  2. v3 = S.rsplit('s',2)
  3. print (v3)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ['tesdf', 'ffgbnhjj', 'ghj']

正则表达式也可以进行分割,可以自己设置是否想要显示分割字符,自己来定的

正则表达式是partiton和split的这2个方法的功能合集

比如要计算一大堆运算的结果

  1. 9*7/5+9-9/3*1

先拿2个做例子吧

  1. 9*7

如果我用partition这个方法进行分割,得到的结果是

9 * 7

如果我用split这个方法进行分割,得到的结果是

9  7

  1. 38. splitlines   以换行为分割符进行分割,默认参数是FalseTrue参数代表保留换行符

Return a list of the lines in S, breaking at line boundaries.
Line breaks are not included in the resulting list unless keepends
is given and true

  1. S = "sdfggh\nqe\nedd"
  2. v = S.splitlines()
  3. print (v,)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ['sdfggh', 'qe', 'edd']
  1. S = "sdfggh\nqe\nedd"
  2. v = S.splitlines(True)
  3. print (v,)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. ['sdfggh\n', 'qe\n', 'edd']
  1. 39. swapcase(self)

把大写变小写,把小写变大写

Return a copy of S with uppercase(大写) characters converted to lowercase(小写)
and vice versa

  1. S = "GOUguoQI"
  2. v = S.swapcase()
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gouGUOqi
  1. 40. replace(self, old, new, count=None)  替换 *****重要
  1. S = "gouguoqi"
  2. v = S.replace('o','n')
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gnugunqi

后面加参数1,表示替换1个,2,表示只替换2个,3,表示只替换3个

  1. S = "gouguoqi"
  2. v = S.replace('o','n',1)
  3. print (v)
  4.  
  5. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  6.  
  7. gnuguoqi

str方法的更多相关文章

  1. str.方法的整理(字符串类型内置方法的具体使用)

    <1>str.strip().str.lstrip()和str.rstrip() 1' str.strip()(主要方法) 方法:str.strip(self,chars) 作用:移除字符 ...

  2. python str方法之ljust、rjust、center

    # -*- coding: cp936 -*- #python 27 #xiaodeng #str方法之ljust.rjust.center #http://www.runoob.com/python ...

  3. python repr方法和str方法

    每个类都有默认的__repr__, __str__方法,用print 实例时调用类的str方法,直接输出类的实例,调用的是类的repr方法 在命令行界面,不用print命令打印而是直接写变量名,就是用 ...

  4. Python之str方法

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之str方法 #http://python.jobbole.com/82655/ #str为一个 ...

  5. eval()方法与str()方法

    eval()方法与str()方法 #_author:Administrator#date:2019/10/31 a={ 'q':{'xxx':3456}}#将一个字典转换成一个字符串a=str(a)p ...

  6. Python 字典(Dictionary) str()方法

    Python 字典(Dictionary) str()方法 描述 Python 字典(Dictionary) str() 函数将值转化为适于人阅读的形式,以可打印的字符串表示.高佣联盟 www.cge ...

  7. Python str方法总结

    1.返回第一个字母大写 S.capitalize(...) S.capitalize() -> string 1 2 3 4 >>>a = 'shaw' >>> ...

  8. str 方法总结整理

    #!/usr/bin/env python #Python 3.7.0 字符串常用方法 __author__ = "lrtao2010" #capitalize 将字符串的首字符改 ...

  9. Java字符串的split(String str)方法空串的问题

    String strs[] = "SS1BB2CC3".split("\\D+"); public static String Test(){ Date d = ...

随机推荐

  1. linux查看进程数

    命令行: $ ps -ef | wc -l 如果想匹配某个关键词的话,加上grep,下面命令是匹配关键词 “XXX”,并统计含有该关键词的进程数 $ ps -ef | grep XXX | wc -l

  2. 分析abex'crackme#2

    文件地址:https://www.wocloud.com.cn/webclient/share/sindex.action?id=i9K_Br6TgE4gbyGIlYkffWKcRy5TUdZ8U6_ ...

  3. axios 如何获取下载文件的进度条

    exportFun(){         let _that = this         const instance = this.axios.create({           onDownl ...

  4. chrome浏览器canvas画图不显示

    问题产生在学习cabvas给画布画图像的时候发现使用IE edge浏览器可以正常显示图像,而chrome则不行,经百度后知道是因为chrome浏览器会先加载javascript代码,之后才加载图片,这 ...

  5. rabbiitmq非阻塞调用

    https://blog.csdn.net/panxianzhan/article/details/50755409 https://blog.csdn.net/u013946356/article/ ...

  6. Hibernate性能提升

    1.大数据量批量插入造成Exception in thread "main" java.lang.OutOfMemoryError 内存溢出异常 正常插入: session.sav ...

  7. 前端移动开发--viewpoint

    移动开发时,一般都会在头部加载这样一行meta标签 <meta name="viewport" content="width=device-width, initi ...

  8. golang-练习2

    反转字符串 package main import "fmt" func FirstReverse(str string) string { var str1 []rune run ...

  9. SpringBoot---监控与管理actuator

    1.概述 SpringBoot在Start POMS中提供了一个特殊依赖模块spring-boot-starter-actuator: 引入spring-boot-starter-actuator模块 ...

  10. centos 6.5 安装 ant

    从ant官方网站下载ant安装包:apache-ant-1.9.7-bin.tar.gz,解压 tar xvf apache-ant-1.9.7-bin.tar.gz -C /usr/java/ 配置 ...