python(day 2)-文字列(2)
7983 ワード
文字列のフォーマット:
文字列のフォーマット方法についてお話ししましたが、復習してみましょう.
フォーマット方法は1つだけではありません.
後の値分は順番に一致します.しかし、これはあまり直感的ではないようで、改善してみましょう.
これは直感的ではないか、対応関係が一目瞭然だ
%10 s-結文字列10文字のスペースは、出力を揃えるときに役立ちますよ.
文字列のメソッドを見てみましょう.
join()メソッド
strip()メソッド:左右のスペースを削除すると改行も削除されますよ.
lstrip():左の
rstrip():右の
次を見て
続けて、分割方法を見て
peplace()置換
split()
splitlines()
startswith()
swapcase()大文字と小文字の変換
タイトルに変換
upper()を大文字に変換
文字列のフォーマット方法についてお話ししましたが、復習してみましょう.
>>> 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()を大文字に変換