python基礎學習 字串常見操作

2021-10-06 14:37:27 字數 3983 閱讀 2261

s = "abcdefg"

# 字串資料,切片後取出的資料都是字串型別

# 從左至右取值:從0開始

# 從右向左取值:從-1開始

print("s[0]:%s" % s[0]) # a

print("s[-1]:%s" % s[-1]) # g

s = "abcdefg"

s1 = s[:] # 取全部

s2 = s[::2] # 從左至右取值,步長為2 aceg

s3 = s[2::-1] # 從2下標開始向左取值,步長為1 cba

s4 = s[-1::-2] # 從-1下標開始向左取值,步長為2 geca

s5 = s[2:5] # 從2下表開始取值,到5下表截至,不包含5 cde

# 字串的常用操作方法    字串操作不會對原有字串進行改變

s = "taibai"

word = "hello world"

print(s.count("i")) # 統計字串中xx出現次數 返回資料int 2

print(s.upper()) # 字串整個轉換為大寫 taibai

print(s.lower()) # 字串整個轉換為小寫 taibai

print(s.capitalize()) # 字串首字母轉換為大寫 taibai

print(word.capitalize()) # 整個字串首字母轉換為大寫(整個字串看為乙個整體)hello world

print(s) # 字串操作不會對原有字串進行改變 taibai

# 應用 驗證碼不區分大小寫(統一轉換為大寫或小寫)

user_name = input("請輸入使用者名稱:")

password = input("請輸入密碼:")

code = "qwer"

your_code = input("請輸入驗證碼(不區分大小寫):")

if your_code.lower() == code.lower():

if user_name == "zhangsan" and password == "1234":

print("登入成功")

else:

print("驗證碼或密碼錯誤")

else:

print("驗證碼錯誤")

# strip 去空(去除左右空格) 包含:\n、\t

str1 = " \nabcd31 12 \t"

print(str1.strip())

print(len(str1)) # 27 去空後,不影響原有字串

# lstrip 去除左邊空格

print(str1.lstrip())

# rlstrip 去除右邊空格

print(len(str1.rstrip())) # 去除右邊空格

# join 字串拼接(用什麼把字串拼接起來)

str1 = "abcd" # 如果被拼接元素是字串,則把字串拆分成單獨元素,再進行拼接

print("+".join(str1)) # a+b+c+d

str2 = ["a1", "a2" ,"a3"] # 被拼接元素如果是列表,則列表中元素必須是字串,如果是數字,則會報錯

print(":".join(str2)) # 拼接後:a1:a2:a3

# split 把字串以某元素分割 分割成多個字串,放在列表中,不包含分割元素

str1 = "abcdefg"

print(str1.split("b")) # 分割後:['a', 'cdefg']

str2 = ":abd:def:efg:fgh"

print(str2.split(":", 2)) # 2為分割次數,表示分割兩次 分割後:['', 'abd', 'def:efg:fgh']

# count 統計字串出現次數

str1 = "abcdabcdefabceasd"

print(str1.count("abc")) # 3

# format

msg = "我叫{},今年{},就讀於{}"

msg1 = msg.format("張三", 18, "墨爾本大學")

print(msg1) # 我叫張三,今年18,就讀於墨爾本大學

# 可以直接再字串後拼接

msg3 = "我叫{},今年{},就讀於{}".format("李四", 25, "北京大學")

print(msg3) # 我叫李四,今年25,就讀於北京大學

# 使用索引的方法,可以減少format後引數的個數,重複引數不用寫多次

msg3 = "我叫,今年,就讀於,不管我去到哪,我都叫".format("李四", 25, "北京大學")

print(msg3) # 我叫李四,今年25,就讀於北京大學,不管我去到哪,我都叫李四

# 使用引數名的方法傳遞,format後引數指定引數值

msg4 = "我叫,今年,就讀於,不管我去到哪,我都叫".format(age=25, adu="北京大學", name="李四")

print(msg4)

# is系列 判斷是否是什麼型別

a = "abc"

b = "abc123"

# isalnum 字串由字母或數字組成

print(a.isalnum()) # true

print(b.isalnum()) # true

# isdecimal 字串只由十進位制組成 不包含羅馬數字,中文數字,小數

print(a.isdecimal()) # false

print(b.isdecimal()) # false

# isalpha 字串只由字母組成

print(a.isalpha()) # true

print(b.isalpha()) # false

# isdigit 判斷是否是整數 不包含羅馬數字,中文數字,小數

num1 = "1234"

num2 = "1234abc"

print(num1.isdigit()) # true

print(num2.isdigit()) # false

# 應用   判斷是否是小數

"""1、判斷小數點個數是否是1 count

2、以小數點分割 判斷小數點右邊是否是整數

3、判斷小數點左邊

是整數isdigit

如果是負整數

"""def is_float(s):

str1 = str(s)

if str1.count(".") == 1:

left = str1.split(".")[0]

right = str1.split(".")[1]

if right.isdigit():

if left.count("-") == 1 and left.startswith("-"):

num3 = left.split("-")[-1]

if num3.isdigit():

return true

elif right.isdigit():

return true

else:

return false

# 呼叫is_float函式執行

price = input("請輸入商品**:")

if is_float(price):

print("輸入正確:%s" % price)

else:

print("輸入有誤:%s" % price)

python基礎學習字串操作

常用的字串操作 somestring.capitalize 首字母大寫,不需要引數 somestring.lower 將字母轉換為小寫 somestring.upper 將字母轉換為大寫 somestring.count 統計引數出現的次數 somestring.find 查詢引數的索引 somes...

Python學習 字串

前面學了基本的python語法和內容後也會寫一些程式了,每寫完乙個程式都有莫大的自豪感 成就感,學習python一定要盡可能自己琢磨演算法和程式語言的使用,穩步提公升,語法又上線,演算法無止境,嘻嘻!今天決定好好介紹下字串 序列 字串的格式化輸出 以及字串的轉義字元。1 序列中的所有元素都是有編號的...

Python學習 字串

python的字串和c語言中的字串有著很多的差異,在python中無論是雙引號還是單引號中的字元都是字串。使用起來相對靈活。例如 this is a string 或者 this is a string 對於字串內部存在引號內容,在python中可以有一種簡易的做法 this is a string...