Python定義字元串
1. python字元串
字元串 :在python中是作為序列存在的,序列中的元素具有從左到右的順序,並根據他們的相對位置進行讀取和儲存。嚴格意義來說,字元串是一系列單個字元組成的序列,其他類型的序列還包括列表和元組。在一串字元兩側加上雙引號或者單引號即可創建字元串。
注意 :如果字元串中需要出現雙引號或者單引號,則有兩種方法。
1)使用轉義字元()進行轉義。
2)將雙引號和單引號配合使用,即若向想列印單引號,可以使用雙引號表示字元串,在字元串中只用一個單引號。反之亦然。
在一個字元串前面加上r;則會自動為字元串中的反斜杠轉義,使其只代表一個反斜杠。但是注意,原始字元串最後不能有反斜杠,否則會發生語法錯誤。如果非要在原始字元串最後加上,則可以寫為。
運行結果為:
有時我們需要創建一個跨行的字元串,則可以使用三引號來創建。
運行結果為
1)可以通過len()函數得到序列的長度。
運行結果為:
2)可以通過索引操作得到序列的各個元素值。python中序列的索引是從0開始依次向後推移。
運行結果為:
3)python還支持反向索引,是從最後一個向前推移的。-1是指序列中的最後一個元素值,-len(str)是指該序列的第一個元素值。
運行結果為:
4)序列還支持一種 分片(slice) 的操作,這是一種能夠一步提取整個分片的方法。
分片可以看作是字元串中一部提取出其中一部分的方法。其一般形式為:X[I:J],表示從X序列中取出第I個元素到不包含第J個元素的部分,結果為返回一個新的對象。
運行結果為:
在一個分片(slice)中,左邊界默認為0。同時應注意負偏移量在分片中的邊界,也應為左側數字比右側數字小。拷貝全部字元串的用法為str[:]。
運行結果為:
5)作為一個序列,字元串還支持用「+」來合並字元串。
運行結果為:
6) 不可變性 ,python中字元串具有不可變性,在創建一個字元串之後不可以通過對其某一位置進行賦值而改變該字元串,但可以通過創建一個新的字元串並以同一個變數名命名。
運行結果為:
7)除了一般的序列操作,字元串還有一些其特有的操作方法。
如find()方法,可以用於查找一個子字元串,可以返回該子字元串的索引值。但如果存在多個符合的子字元串,只會返回第一個索引值。如果不存在該子字元串,則返回-1。replace(S1,S2)方法會將字元串中的S1替換為S2。
運行結果如下:
關於字元串,python還有許多內置函數,可以通過調用dir()函數來查看。
2. Python定義一個函數,任意輸入一個字元串,反回字元串中,字元,數字,及其以
Python中提供了input()函數可以用於接收字元串的輸入,並且會將輸入內容轉化為字元串類型。肆答賣
如果你想要反回字元串中的字元、數字和其它符號的個數,你可以使用isalpha()、isdigit()和isalnum()方法來判斷每個字元的類型,並用計數器來記錄它們的個數。
如果你想要反回字元串中的字元、數字和其它符號的內容,你可以使用for循環或切片來遍歷字元串,並用條件語句來篩選出不裂逗同類型的字元。
我為你生舉腔成了一段可能滿足你需求的Python代碼:
def count_and_reverse(string): # 定義三個計數器
char_count = 0
digit_count = 0
other_count = 0
# 定義三個空列表
char_list = []
digit_list = []
other_list = []
# 遍歷字元串中的每個字元
for c in string: # 判斷字元類型並更新計數器和列表
if c.isalpha():
char_count += 1
char_list.append(c) elif c.isdigit():
digit_count += 1
digit_list.append(c) else:
other_count += 1
other_list.append(c)
# 反轉列表中的元素順序
char_list.reverse()
digit_list.reverse()
other_list.reverse()
# 返回結果
return (char_count, digit_count, other_count), (char_list, digit_list, other_list)# 測試代碼string = input("請輸入一個字元串:")
result = count_and_reverse(string)print("該字元串中有{}個字元,{}個數字,{}個其它符號".format(*result[0]))print("該字元串中的字元反向輸出為:{}".format("".join(result[1][0])))print("該字元串中的數字反向輸出為:{}".format("".join(result[1][1])))print("該字元串中的其它符號反向輸出為:{}".format("".join(result[1][2])))