Python之字符串python
字符串的經常使用功能:拼接,移除空白,分割,長度,索引,切片,格式化,查找,替換。web
拼接:api
s="hello"+"world"+"I"+"am"+"python" print(s) print(" ".join(["I","am","world!"])) #join裏放要拼接的內容,將內容放在列表裏。
移除空白:ide
name = ' \n\t George Wang \t ' print(name) print(name.strip()) # 脫掉,去除空白,\t,\n
分割:將字符串分割成列表。spa
name = ' \n\t George; Wang \t ' print(name.split()) #分割,默認把每一個字符按空格分割成列表 print(name.split(";")) #分割,也能夠指定分割的類型
s="hello world".split("l",1) #數字1爲分割次數 # ["he","lo world"] print(s)
判斷長度:有多少個字符翻譯
name = ' \n\t George; Wang \t ' print(len(name))
切片:顧頭不顧尾code
name = "asdfghjjkl" print(name.index("a")) # 那索引值 print(name[0:5]) #根據索引值切片 print(name[-4:-1]) #根據索引值切片 print(name[-4:]) #切到尾 print(name[0::2]) #跳着切 2是步長。一次條倆
格式化字符串:orm
%s 佔位符(字符串) %d 數字(整型) %f 小數 (浮點型) blog
name = input("name>>:") age = input("age>>:") job = input("job>>:") salary = input("salary>>:") info = """ ----------- info of %s ------------ NAME = %s AGE = %s JOB = %s Salary = %s """% (name,name,age,job,salary) print(info)
print("hello %s,%s"%("sb","you")) print("hello %s, his age is %d"%("sb",35)) print("hello %s, his age is %.4f"%("sb",35.53452345)) print("hello {0}, his age is {1}".format("you",34)) print("hello {0}, his age is {1}".format(34,"you")) print("hello {name}, his age is {age}".format(age=30,name="somebody")) print("hello {name}, his age is {age}".format_map({"name":"you","age":1000})) #字典的形式
查找: 索引
#查找字符 print("hello world".find("a",4)) print("hello world".rfind("l")) print("hello world".index("q"))
替換:
#替換方法 s="hello world" print(s.replace("world","Python")) #徹底匹配 print(s)
字符串操做大總結:
1 name = "george \tWang is Nice" 2 name2 = "My name is {0}, i am {1} years old " 3 name3 = "My name is {name}, i am {age} years old " 4 5 print(name.capitalize()) #首字母大寫 6 print(name.casefold()) #大寫變小寫 7 print(name.center(50,'-')) #定義字符串長度,字符不夠用‘-’補充。 8 print(name.count('e',2)) #統計字符串中某個字符的個數,能夠設置起始點和結束點 9 print(name.endswith('ce')) #字符串以什麼結尾。區分大小寫 10 print(name.expandtabs(30)) #設置table鍵的長度。 11 print(name.find("e",2)) #返回找到的第一個所找字符的索引值,找不到返回-1. 12 print(name2.format("George",26)) #字符串格式化 13 print(name3.format(name = "George",age = 27)) #格式化輸入 14 print(name3.format_map({'name':'GEORGE','age':28})) 15 print(name.index('W')) #返回要查找的字符的索引值 16 print('a1a'.isalnum()) #查看字符串是否是有數字和字符,取值範圍是a-z,A-Z,0-9 17 print('1111'.isdecimal()) #是否是一個正整數 18 print('aaa'.isalpha()) #是否是字母 19 print('a'.isidentifier()) #identifier關鍵字, 字符串是否是合法的變量名或關鍵字 20 print('a'.islower()) #是否是小寫 21 print('A'.isupper()) #是否是大寫 22 print('22222'.isnumeric()) #是否是數字 23 print('aaa'.isprintable()) #是否是可打印。 24 print('a'.isspace()) #是否是空格 25 print('a'.istitle()) #是否是英文標題 首字母大寫 26 print('||||'.join(['wang','george','mack'])) #將列表拼成字符串------------------------------------------------------ 27 print(name3.ljust(50,'-')) #左對齊,字符長度不夠,‘-’來補 28 print(name3.rjust(50,'-')) #右對齊,字符長度不夠,‘-’來補 29 print(name3.lower()) #大寫變小寫 30 print(name3.rfind('s')) #從右邊找字符---------------------------- 31 print(name3.lstrip("My name is")) #移除左邊的字符串。------------------------- 32 print(name3.swapcase()) #大小寫互換 33 print(name3.replace('name',"NAME")) #替換----------------------- 34 print('Hello World'.zfill(17)) #定義字符串長度,不足用數字0,補滿。 35 # ----------------------------------- 36 IN = 'anmefgori' 37 OUT = '!@#$%^&*(' 38 39 trans_table = str.maketrans(IN,OUT) #translate = 翻譯 40 print(name3.translate(trans_table)) #字符翻譯 41 42 # ------------------------------------