首页 > 代码库 > python string

python string

 string比较连接

>>> s1="python string"
>>> len(s)
13

>>> s2="  python string2 "
>>> s=s1+s2
>>> s
python string  python string2 
>>>

>>> cmp(s1,s2)
1

 

string 截取

>>> s1[0]
p
>>> s1[-1]
g

>>> s1[0:5]
pytho

>>> s1[1:]
ython string

>>> s1[::-1]
gnirts nohtyp

>>> s1
python string

>>> s1[2:-1]
thon strin

>>> s1[:8:-1]
gnir

>>> s1[::2]
pto tig
>>> s1[::-2]
git otp
>>> s1[5::-2]
nhy
>>> s1[:5:-2]
git 

 

string搜索和替换

>>> s3="onnoonssss"
>>> s3.count("s")
4
>>> s3.count("ss")
2
>>> s3.count("on")
2
>>> s3.count("no")
1

>>> s4="sssnnnsss"
>>> s4.index("s")
0
 #rindex 从右边算起的第一次出现的也就是index的逆序

 >>> s4.rindex("s")
 8

>>> s4.index("s",4)
6
>>> s4.index("n")
3
>>> s4.index("n",4)
4
#如果搜索的字符没有,则报错
>>> s4.index("g")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>> s4.find("s")
0
>>> s4.find("s",5)
6
#如果搜索的字符没有则-1
>>> s4.find("g",5)
-1

  >>> s4.replace("s","g")
  gggnnnggg
  >>> s4.replace("ss","g")
  gsnnngs

 #S.replace(oldstr, newstr, [count])  把S中的oldstr替换为newstr,count为替换次数

  >>> s4.replace("s","g",1)
  gssnnnsss
  >>> s4.replace("s","g",2)
  ggsnnnsss

  >>> s2
  python string2 
  >>> s2.strip()
python string2
  >>> s2.lstrip()
python string2 
  >>> s2.rstrip()
  python string2
  >>> s="* python * * string *"
  >>> s.strip("*")
 python * * string 
  >>> s.lstrip("*")
 python * * string *

 

string分割组合

 

#S.split([sep, [maxsplit]]) #以sep为分隔符,把S分成一个list。maxsplit表#示分割的次数。默认的分割符为空白字符 
>>> s2
  python string2 
>>> s2.split(" ")
[‘‘, ‘‘, python, string2, ‘‘]

>>> s2.split(" ",1)
[‘‘,  python string2 ]

>>> s2.rsplit(" ",1)
[  python string2, ‘‘]

#S.splitlines([keepends]) #把S按照行分割符分为一个list,keepends是#一个bool值,如果为真每行后而会保留行分割符。

>>> s5="""
... first line
... second line
... """
>>> s5.splitlines()
[‘‘, first line, second line]

#str.join(sequence) sequence -- 要连接的元素序列 返回通过指定字符
#连接序列中元素后生成的新字符串。
>>> "-".join(s1)
p-y-t-h-o-n- -s-t-r-i-n-g

 

 string测试

>>> s
python string  python string2 

>>> s1.isupper()
False
>>> s1.islower()
True
#是否全是空白字符,并至少有一个字符
>>> s1.isspace()
False
#是否全是数字,并至少有一个字符 
>>> s.isdigit()
False
#是否全是字母,并至少有一个字符
>>> s.isalpha()
False
#是否全是字母和数字,并至少有一个字符 
>>> s.isalnum()
False
 #是否是首字母大写的
>>> s.istitle()
False

#str.startswith(str, beg=0,end=len(string));
>>> s
 Python string !! 
>>> s.startswith(" P")
True
>>> s.endswith(" ")
True
>>> s.startswith("P",2)
True
>>> s.startswith("P",3)
False
>>>

 

 string输出对齐

#输出width个字符,S左对齐,不足部分用fillchar填充,默认的为空格
>>> s.ljust(50,"s")
  Python string  !!  sssssssssssssssssssssssssssss
#右对齐
>>> s.rjust(50,"s")
sssssssssssssssssssssssssssss  Python string  !!  
#中间对齐
>>> s.center(50,"c")
cccccccccccccc  Python string  !!  ccccccccccccccc
#把S变成width长,并在右对齐,不足部分用0补足
>>> s.zfill(50)
00000000000000000000000000000  Python string  !!  

 

string大小写

>>> s1.lower()
python string
>>> s1.upper()
PYTHON STRING
#大小写互换 
>>> s1.swapcase()
PYTHON STRING
>>> s1.capitalize()
Python string
>>> s1.title()
Python String

python string