明確:對字符串的操作方法都不會改變原來字符串的值
1,去掉空格和特殊符號
name.strip() 去掉空格和換行符
name.strip('xx') 去掉某個字符串
name.lstrip() 去掉左邊的空格和換行符
name.rstrip() 去掉右邊的空格和換行符
2,字符串的搜索和替換
name.count('x') 查找某個字符在字符串里面出現的次數
name.capitalize() 首字母大寫
name.center(n,'-') 把字符串放中間,兩邊用- 補齊
name.find('x') 找到這個字符返回下標,多個時返回第一個;不存在的字符返回-1
name.index('x') 找到這個字符返回下標,多個時返回第一個;不存在的字符報錯
name.replace(oldstr, newstr) 字符串替換
name.format() 字符串格式化
name.format_map(d) 字符串格式化,傳進去的是一個字典
Year {} Rs. {:.2f}".format(year, value) 稱為字符串格式化,大括號和其中的字符會被替換成傳入 str.format() 的參數,也即 year 和 value。其中 {:.2f} 的意思是替換為 2 位精度的浮點數。
{:5d} 的意思是替換為 5 個字符寬度的整數,寬度不足則使用空格填充。
divmod(num1,num2)返回一個元組,這個元組包含兩個值,第一個是num1 與 num2 相整除得到的值,第二個是num1 與 num2 求余得到的值
用 * 運算符查封這兩個元組,得到這兩個值。
等價於
3,字符串的測試和替換函數
S.startswith(prefix[,start[,end]])
#是否以prefix開頭
S.endswith(suffix[,start[,end]])
#以suffix結尾
S.isalnum()
#是否全是字母和數字,並至少有一個字符
S.isalpha() #是否全是字母,並至少有一個字符
S.isdigit() #是否全是數字,並至少有一個字符
S.isspace() #是否全是空白字符,並至少有一個字符
S.islower() #S中的字母是否全是小寫
S.isupper() #S中的字母是否便是大寫
S.istitle() #S是否是首字母大寫的
4,字符串的分割
name.split() 默認是按照空格分割
name.split(',') 按照逗號分割
5,連接字符串
‘,’.join(slit) 用逗號連接slit 變成一個字符串,slit 可以是字符,列表,字典(可迭代的對象)
int 類型不能被連接
6,截取字符串(切片)
str = '0123456789′
print str[0:3] #截取第一位到第三位的字符
print str[:] #截取字符串的全部字符
print str[6:] #截取第七個字符到結尾
print str[:-3] #截取從頭開始到倒數第三個字符之前
print str[2] #截取第三個字符
print str[-1] #截取倒數第一個字符
print str[::-1] #創造一個與原字符串順序相反的字符串
print str[-3:-1] #截取倒數第三位與倒數第一位之前的字符
print str[-3:] #截取倒數第三位到結尾
print str[:-5:-3] #逆序截取
7.string 模塊
import string
string.ascii_uppercase 所有大寫字母
string.ascii_lowercase 所有小寫字母
string.ascii_letters 所有字母
string.digits 所有數字