Python字符串的處理

前言
如今,計算機處理的數據並不只是數字等,更多的是處理文本信息,所以在平時編程時不可避免的會使用到字符串,那麼對字符串的處理將是學習python必過的一關!靈活的掌握了字符串的處理操作,才能幫助你今後”降妖除魔“
在python中,字符串是由單引號或雙引號括起來的零個或多個字符組成的有限序列。建議使用雙引號,這樣在雙引號內還能使用單引號,把單引號當作字符串的一部分。
1、字符串轉義
在字符串中使用轉義字符(反斜槓)進行轉義,使一些特殊字符當作普通的字符如 \n 表示換行, ’ 表示需要使用 \’ 等
2、原始字符串,取消轉義
使用r取消轉義,輸出字符串中所有的(反斜槓)

 print(r'C:\some\name' )  # C:\some\name

3、三重引號連續輸入字符串
使用三重引號(單引號或雙引號)實現跨行連續輸入,它們之間所有的引號、製表符和換行符都是字符串的一部分,代碼塊的縮進功能在三重引號內不起作用。並且多行字符串可用作多行註釋,不再侷限於#一行註釋

s3 = """
Hello
,
 World
!
"""

4、字符串拼接運算
字符串可以用+進行連接,相鄰的兩個或多個會自動連接到一起,用* n進行重複n次

s1 = "hello"* 3
print(s1) # hellohellohello
s2 = s1 + "world"
print(s2) # hellohellohelloworld

5、字符串取值和切片
字符串可用下標取值,每個字符都是一項,從0開始計數。如果用冒號連接兩個下標指定一個範圍,將會返回一個子字符串,其中開始下標將被包含,結束下標則不包含在內。省略第一個表示從0開始,省略第二個表示到字符串的末尾。使用len()方法可取得字符串的長度

str = "abcdefg"
print(str[3])   #d
print(str[1:5])  #bcde
print(str[1:])  #bcdefg

6、in和not in 操作符
該操作可以判斷一個成員是否在字符串中。連接兩個字符串,返回值爲布爾值

str = "abcdefg"
print('abc' in str)  #True
print('sd' in str) # False

7、格式化輸出字符串

print('%d * %d = %d' % (a, b, a * b))
print('{0} * {1} = {2}'.format(a, b, a * b))   #字符串提供的方法
print(f'{a} * {b} = {a * b}')  #python3.6以後提供的簡潔方式

8、字符串方法
(1)返回大小寫新字符串
upper() 返回一個新字符串,該串中所有字母都大寫,並不改變字符本身

str = "hello"
print(str.upper())  #HELLO

lower() 返回一個新字符串,該串中所有字母都小寫,並不改變字符本身

str = "WorLD"
print(str.lower())  #world

(2)返回布爾值
isupper()和islower() 可判斷字符串中所有的字母是否都是大寫或小寫

str = "WorLD"
print(str.islower())   #False
print(str.upper())   #False

isalpha() 判斷該字符串是否都是字母

print(str.isalpha())   #True

isalnum() 判斷該字符串是都只有字母和數字

print(str.isalnum())   #True

isdecimal() 判斷該字符串是否只有數字

print(str.isdecimal())   #False

isspace() 判斷該字符串是否只包含空格、製表符和換行,但非空

print(str.isspace())   #False

istitle() 判斷該字符串是否是大寫開頭,後面都是小寫字母

print(str.istitle())   #False

(3)字符串的開始和結束匹配
startswith()和endswith() 其中傳入參數字符串,判斷調用的字符串是否是以參數字符串開頭或者結束

print(str.startswith('W'))  #True
print(str.endswith('D'))  #True

(4)查找字符串中字串的位置
使用find()方法可以返回字串在字符串中的位置,從0開始,找不到返回-1

print(str.find('Wo'))   # 0

(5)將列表連接成爲字符串
join() 參數是字符串列表,返回一個字符串,調用字符串,插入到列表值中間

print('A'.join(['a','b','c']))  # aAbAc
print(''.join(['a','b','c']))   # abc

(6)拆分字符串,返回列表
split() 針對一個字符串調用,返回一個字符串列表,默認按空白字符劃分,也能傳入分割字符串作爲參數

print('aaAbbAcc'.split('A'))   #['aa', 'bb', 'cc']
print('my name is mike'.split())  #  ['my', 'name', 'is', 'mike']

(7)字符串對齊文本
rjust()和ljust()通過插入空格調整字符串的位置對齊文本,第一個參數是調整後的整個字符串的長度 rjust()往右調整,原字符串在右邊,ljust()往左調整,center()使字符串居中,第二個可選參數可以放入插入填充的字符

print('hello'.rjust(10)) #  ‘     hello’
print('hello'.rjust(10,'a'))  # ‘aaaaahello’

(8)刪除字符串中的空白字符
strip()、rstrip()和lstrip()可以刪除字符串兩邊、右邊和左邊的空白字符(如空格、製表符和換行符等),刪除後會返回一個新的字符串。

print('     hello'.lstrip())  # hello

也可加入一個字符串參數,指定兩邊的哪些字符可以刪除,參數字符串中字母的順序不重要

print('avddvaHandSomedvaavd'.strip('vda'))   #HandSome

(9)拷貝黏貼字符串
pyperclip 模塊有copy()和paste()函數,實現拷貝粘貼字符串功能,該模塊不是Python自帶的,需要安裝。

import  pyperclip
pyperclip.copy('Hello')
print(pyperclip.paste())   # Hello
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章