切換到python 2,要加第一行纔不亂碼,這個是申明python
name = "li\tLIlililI"
print(name.capitalize()) # 首字母大寫,其餘小寫
print(name.casefold()) # 所有變小寫,這個程序不用判斷大小寫
print(name.center(50))
print(name.center(50,"-"))
print(name.count("i")) #統計
print(name.count("i",3,6)) #統計從第3個開始,第6個結束
print(name.endswith("I")) # 以I結尾
print(name.expandtabs(30)) # 設置\t的長度
print(name.find("i")) # 找第一個i的位置,若是找不到就是-1
print(name.find("i",3)) # 從第3個開始找,找第一個i的位置,若是找不到就是-1
name1 = "my name is {name},i am {age} years old"
print(name1.format(name="jensen",age=22)) #格式化輸出
print(name1.format_map({"name":"lili","age":23}))
name = "li\tLIlililI"
print(name.index("li")) #找出li的索引值
print(name.isalpha()) #判斷是否嬰兒
name='2nn'
print(name.isalnum()) # a-zA-Z0-9
print("10.1".isdecimal()) # 是否一個正整數
print("aa".isalpha()) # 是否是字母
print("a".isidentifier()) #是否是一個合法的變量名(或關鍵字),1a或-a都不是
print("a".islower()) # 小寫
print("a".isupper()) # 大寫
print("12.3".isnumeric()) #沒用,不能帶點
print("a".isprintable()) # 是否可打印,例如圖片就不能打印,音頻
print("a".isspace()) # 是否是空格
print("Ab".istitle()) # 是否是英文標題,首字母大寫叫英文單詞
print( ";".join(["sjse","uei","ris"])) # 把列表拼接爲字符串
print(name.ljust(50,"-")) #左對齊,佔50個字符,不足的話用-補充
print(name.rjust(50,"-")) #左對齊,佔50個字符,不足的話用-補充
print(name.lower()) #大寫變小寫
print(name.rfind("n")) #用右邊開始找,從左邊數的位置
name1 = "my name is my {name},i am {age} years old"
print(name1.lstrip("my")) # 移除左邊第一個my
print(name1.swapcase()) # 大小寫互換
# 翻譯工具,容易破解,通常沒人用
IN="abcde"
OUT="12345"
aaa=str.maketrans(IN,OUT) # trans是translate是翻譯
print(name1.translate(aaa)) # a變爲了1
# 密碼不能被破解
# 我輸入密碼1234
# 支付寶會變爲密文adafwe
# 若是用密文輸入,登陸不了
print(name1.zfill(50)) #沒用
print(name1.replace("s","h")) # 替換
print(name1.replace("s","h",1))#替換
# 經常使用的
# strip
# center
# count
# find
# casefold或lower
# upper
# join
# split
# endwith
# startwith
# replace
name3="lwlewle"
print(name3.endswith("e"))api
------- 編碼1網絡
# _*_ coding:utf-8 _*_
name = "中國" #utf-8 格式的編碼
print name
print [name] # 存在列表裏是16進制的格式的
print [name.decode("utf-8")] #你如今是什麼編碼
# [u'\u4e2d\u56fd'] 前面有u就是unicode
print name.decode("utf-8") #你看到的不是unicode,而是終端屏幕的編碼格式
print name.decode("utf-8").encode("GBK") # 寫要轉化的目標編碼
gbk = name.decode("utf-8").encode("GBK")
print gbk.decode("GBK").encode("gb2312")
print gbk.decode("GBK").encode("utf-8")
ab=gbk.decode("GBK").encode("utf-8")
print(ab)
ab1=ab.decode("utf-8").encode("GBK")
print(ab1)
# 若是內存都是unicode的話,就不會亂碼
# 數據類型
# str 字符,只是一種人類可讀的抽象的表示形式
# int 整數
# float 浮點
# bool 邏輯符
# list 列表
# tuple 集合
# dict 字典
# set
# bytes 字節類型,二進制類型,但不是單純的0101,就是一個8bits的字節
# 在python 2裏,字符串都是bytes
# 在python 3裏,字符串都是unicode,解釋器讀取文件的默認編碼是utf-8,自動解碼爲unicode
a="jensen"
print type(bytes(a))ide
# python 2的str 在python 3的 python str
# str是沒法直接存到硬盤的,必定要轉二進制,因此轉bytes
# 數據存到硬盤中或網絡發送,必須是bytes形式
-- 編碼2工具
name = "中國"print(name)print(type(name))# 一些代碼在liunx寫的,如今要讀到python 3中# python 3 全部字符在內存裏都是unicode,# 解釋器讀取文件的默認編碼是utf-8,自動解碼爲unicode# 但有個文件的編碼是gbk,讀到內存裏須要解碼# 打開文件f = open ("test.txt",encoding='GBK') #默認以utf-8解釋print(f.read())name = "中國"print(name.encode("utf-8"))print(name.encode("gbk")) #python3會把unicode裝成相應編碼的同時,把字符變成bytes