1. 程式人生 > >Python-字符串操作

Python-字符串操作

和數 布爾 居中 sta 空格 log post 運行 erl

對字符串的內容進行判斷,返回布爾類型

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘python‘.endswith(‘on‘)) #判斷字符串是否以on結尾,返回布爾類型
print(‘python‘.startswith(‘py‘)) #判斷字符串是否以py開頭 ,返回布爾類型
print(‘abc123‘.isalnum()) #判斷字符串是否僅為字母和數字組成,返回布爾類型
print(‘abc‘.isalpha()) #判斷字符串是否為純字母組成,返回布爾類型
print(‘0x7c‘.isdecimal()) #判斷是否為十進制,返回布爾類型
print(‘1.2‘.isdigit()) #判斷是否為整數,返回布爾類型
print(‘abc‘.isidentifier()) #判斷字符串是否為一個合法的變量名,返回布爾類型
print(‘aBc‘.islower()) #判斷字符串是否全為小寫字母,返回布爾類型
print(‘aBc‘.isupper()) #判斷字符串是否全為大寫字母,返回布爾類型
print(‘1.2‘.isnumeric()) #判斷是否僅有數字,小數點也不行,返回布爾類型
print(‘ ‘.isspace()) #判斷是否為空格,返回布爾類型
print(‘This Is A Title‘.istitle()) #判斷字符串是否為標題格式,返回布爾類型
print(‘abc‘.isprintable()) #判斷是否能打印,返回布爾類型

字符串的分割

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘http://www.baidu.com‘.partition(‘://‘)) #根據指定的分隔符對字符串進行分割
# 返回一個3元的元組,第一個為分隔符左邊的字符串,第二個為分隔符本身,第三個為分隔符右邊的字符串
# 如果分隔符在最左邊,則第一個為空,如果分隔符在最右邊,則第三個為空

print(‘http://www.baidu.com‘.split(‘://‘)) #根據指定的分隔符對字符串進行分割
# 返回一個被分割的字符串列表,不包括分隔符
print(‘Pyt\nhon‘.splitlines()) #根據換行符進行分割

運行結果

技術分享圖片

字符串的格式化

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

info = ‘My name is {name} and my age is {age}‘
print(info.format(name=‘John‘,age=23)) #字符串格式化
print(info.format_map({‘name‘:‘Jack‘,‘age‘:22})) #以字典格式把字符串格式化

運行結果

技術分享圖片

字符串的索引操作

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘python‘.index(‘o‘)) #打印字符串所在位置的索引值,如果沒有會報錯
print(‘python‘.index(‘o‘,0,5)) #0為開始索引的索引值,5為結束索引的索引值
print(‘python‘.find(‘t‘)) #打印字符串所在位置的索引,如果沒有索引值為-1
print(‘Java‘.rfind(‘a‘)) #從右往左找對應的字符串,如果有相同的字符,返回的為先找到的字符的索引,索引還是從左往右數

運行結果

技術分享圖片

字符串大小寫的操作

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘python‘.capitalize()) #首字母大寫

print(‘this is a title‘.title()) #把字符串轉換為標題格式

print(‘AbC‘.lower()) #把字符串轉為全小寫
print(‘aBc‘.upper()) #把字符串轉為全大寫

print(‘aBc‘.swapcase()) #把字符串中的大寫轉化為小寫,小寫轉化為大寫

運行結果

技術分享圖片

字符串的填充

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘python‘.center(20,‘-‘)) #把字符串居中,用‘-‘在左右填充到20個字符數

print(‘python‘.ljust(25,‘+‘)) #字符串在左邊,右邊用‘+‘把字符串填充到25個字符數
print(‘python‘.rjust(30,‘#‘)) #字符串在右邊,左邊用‘#‘把字符串填充到30個字符數

print(‘abc‘.zfill(20)) #用0把字符串填充到20個字符數

name = ‘John \tand Jack‘
print(name.expandtabs(tabsize=20)) #把table鍵填充到第20位數為止

運行結果

技術分享圖片

字符串的計算

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘python‘.count(‘t‘)) #計算字母t的個數

運行結果

技術分享圖片

刪除字符串的空格和換行符

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘ abc ‘.strip()) #刪除字符串兩邊的空格和回車
print(‘abc ‘.rstrip()) #刪除字符串右邊的空格和回車
print(‘ abc‘.lstrip()) #刪除字符串左邊的空格和回車

運行結果

技術分享圖片

字符串的替換

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

s = str.maketrans(‘abcdef‘,‘123456‘) #前後個數要對應
print(‘Java and perl‘.translate(s)) #字母會被對應的數字替換

print(‘python‘.replace(‘p‘,‘P‘)) #替換字符串

運行結果

技術分享圖片

字符串的連接

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR"

print(‘+‘.join([‘1‘,‘2‘,‘3‘])) #將序列中的元素以指定的字符連接生成一個新的字符串

運行結果

技術分享圖片

Python-字符串操作