python(day 2)-文字列(2)

7983 ワード

文字列のフォーマット:
文字列のフォーマット方法についてお話ししましたが、復習してみましょう.
>>> print('His name is %s', 'jeff')
His name is %s jeff

フォーマット方法は1つだけではありません.
>>> print('{0} , {1}'.format('alex','33'))
alex , 33

後の値分は順番に一致します.しかし、これはあまり直感的ではないようで、改善してみましょう.
>>> print('{name},{age}'.format(name='jeff',age='23'))
jeff,23

これは直感的ではないか、対応関係が一目瞭然だ
>>> print('%-10s%-10s%-10s' % ('name','age','job'))
name      age       job

%10 s-結文字列10文字のスペースは、出力を揃えるときに役立ちますよ.
文字列のメソッドを見てみましょう.
>>> name = 'jeff'
>>> name.__contains__('ff')    #’ff’     name 
True
>>> name.capitalize()    #     
'Jeff'
>>> name.center(20)        # 20        
'        jeff        '
>>> name.center(20,'*')      #       
'********jeff********'
>>> name.count('f')         #  
2
>>> name.count('f',0,2)    #      
0
>>> name.count('f',0,3)
1
>>> name.endswith('f')     #     f  
True
>>> name.endswith('e',0,2)   #      
True
>>> name = 'j\teff'    
>>> name.expandtabs()     #           ,\t tab
'j       eff'
>>> name.index('f')   #     
3
>>> name.find('ex')    #     ,     -1
-1
>>> name.find('ff')       #r    ,      
3
>>> name.index('x')     #index           
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>>
>>> name = 'jeff'      
>>> name.isdigit()                #       ,        False ,        True
False
>>> name.isalnum()             #         
True
>>> name.isalpha()              #      
True
>>> name.isdecimal()          #        
False
>>> name.isidentifier()         #
True
>>> name.islower()              #      
True
>>> name.isupper()             #      
False
>>> name.isnumeric()         #     
False
>>> name.isspace()            #     
False
>>> name.istitle()                 #     
False

join()メソッド
>>> li = ['a','b','c','d']
>>> '_'.join(li)
'a_b_c_d'

strip()メソッド:左右のスペースを削除すると改行も削除されますよ.
>>> 'name   '.strip()
'name'
>>> '  name   '.strip()
'name'
>>> 'name
'.strip() 'name' >>> '
name
'.strip() 'name'

lstrip():左の
rstrip():右の
次を見て
>>> intab = "aeiou"
>>> outtab = '12345'
>>> from string import maketrans          
>>> trantab = maketrans(intab,outtab)        #python3             
>>> str = 'this is string example.....wow!!'
>>> print str.translate(trantab)
th3s 3s str3ng 2x1mpl2.....w4w!!
>>> print str.translate(trantab,'xm')   #       ,   x m
th3s 3s str3ng 21pl2.....w4w!!

続けて、分割方法を見て
>>> name = 'jackisppp'
>>> name.partition('is')
('jack', 'is', 'ppp')

peplace()置換
>>> name = 'jack is teacher'
>>> name.replace('a','x')     #   a   x
'jxck is texcher'
>>> name.replace('c','T',2)   #    
'jaTk is teaTher'

split()
splitlines()
startswith()
swapcase()大文字と小文字の変換
タイトルに変換
upper()を大文字に変換