用途:存描述性信息的數據,如我的簡介,姓名等python
定義方式:git
三種方式沒有區別,可是同一級引號不能混用,字符串內套字符串,需用不一樣引號code
字符串前面加個小寫的r,表示轉義,將字符串內有特殊意義的字符,所有轉成普通字符串orm
用引號引發的部分,所有轉成字符串對象
print("不換行\r","打印")# >>>打印 print(r"不換行\r")# >>>不換行\r
內置方法索引
1.索引取值(正向從0開始,反向從-1開始),只能取,不能存ip
s1 = "15,4'shen',[2]" print(s1[2])# 正向取>>>, print(s1[-3])# 反向取>>>[
2.索引切片 :截取字符串中的一小段字符,(顧頭不顧尾)第三個爲步長unicode
s1 = "hello,world" print(s1[0:5]) print(s1[:5])# 取前5個數 print(s1[::-1])# 反向取 print(s1[-5:])# 取後五個數 print(s1[0:7:2])# 以步長爲2取
3.成員運算:in 和 not in 返回的是布爾值字符串
s1 = "hello,world" print("o"in s1)# >>>True print("e" not in s1)# >>>False
4..strip():去除字符串左右兩邊指定的字符input
s1 = input(">>>").strip()# 去除字符串兩邊的空格 s2 = input(">>>").strip("*")# 去除輸入兩邊的* s3 = "***shen****" print(s3.strip("*"))# 去除兩邊的*
5.len():獲取字符串中字符的個數,列表中,值的個數,字典中鍵值對個數
s1 = "hello world" print(len(s1))# >>>11(空格也算)
6..split():切分:對字符串按照指定的分隔符進行從左往右切分,能夠指定切分次數,返回的是一個列表
s1 = "python hello world" print(s1.split()) s1 = "python|hello|world" print(s1.split("|")) print(s1.split("|",1))# 指定切分次數,從左往右切 s1 = "python\hello\world" print(s1.split("\\"))# 需兩個\\前面一個爲轉義\特殊意義的,python中\\表明自身\
7.for 變量 in 可迭代對象:循環取值:字符串、列表、字典中能索引取值的
s1 = "hello world" for i in s1: print(i)
8..rstrip()/lstrip():去除字符串右邊/左邊的指定字符
s3 = "***shen****" print(s3.strip("*")) print(s3.rstrip("*")) print(s3.lstrip("*"))
9..lower()/.upper():轉換大小寫
用於寫登陸驗證碼時可以使用
s1 = "Hello WorlD" print(s1.lower())# 所有字母轉成小寫 print(s1.upper())# 所有字母轉成大寫
10..startswith()/.endswith():判斷是否以。。字符開頭或者以。。字符結尾,返回的是布爾值
s1 = "hello world" print(s1.startswith("h")) print(s1.endswith("ld"))
11.字符串格式化,%s,%d,.format(),f-string
%s能夠接收任意字符,%d只能接收數字類型而且輸出轉換成整型
name = input("輸入名字:") age = input("輸入年齡:") #age = int(age)#%d只能接收數字類型,故須要轉換成數字類型 age = eval(age)#%d只能接收數字類型,故須要轉換成數字類型 print("my name is %s" % name) print("my name is %s , my age is %d" % (name, age)) print("my name is %s , my age is %s" % (name, age))
三種玩法
name = "shen" age = 18 hobby = "study" #按順序往{}裏放值 print("個人名字是{}個人年齡{}".format(name, age, hobby)) #按索引放值 print("個人名字是{0}個人年齡{2}".format(name, hobby, age)) #按指定放值 print("個人名字是{mz}個人年齡{nn}".format(mz=name, nn=age))
f"{xxx}"
name = "shen" age = 18 habby = "study" print(f"個人名字是{name},個人年齡是:{age}個人愛好是{hobby}")
12..rslipt():切分,從右往左切,能夠指定切分次數,返回列表
s1 = "python|hello|world" print(s1.split("|",1)) print(s1.rsplit("|")) print(s1.rsplit("|",1))
13..join():按照分隔符將加入純字符串組成的可迭代對象中元素拼成字符串
s1 = ["1","8","shen"] print("*".join(s1))# 將*加入到純字符串列表中拼接成字符串 s1 = {"name":"shen","age":18} print("$".join(s1))#字典拼接的是key關鍵字 s1 = "sean" print("$".join(s1))# 字符串按照每個字符中間插入拼成新的字符串
14..replace():將字符串中字符按照舊值,新值進行替換
s1 = "hello world" print(s1.replace("hello", "hi"))# >>>hi world print(s1)# >>>"hello world"
15..isdigit():判斷當前字符串中的數據,是否爲存數字(整數),返回是布爾值
識別bytes和unicode
s1 ="123" s2 = "123,321" print(s1.isdigit())# >>>True print(s2.isdigit())# >>>False
16..find()、.index():查找字符在字符串中的索引位置
s1 = "hello" print(s1.find("l",0,2))# >>>找不到返回的是-1 print(s1.find("e"))# >>>找到直接返回從左到右第一個索引位置 print(s1.index("l"),1,2)# >>>找不到會報錯 print(s1.index("e"))# >>>找到返回從左到右第一個索引值
17..count():統計字符在字符串中的個數
s1 = "hello" print(s1.count("l",0,-1))# >>>2
18.字符串拼接
只能進行相加和相乘
s1 = "hello" s2 = 'world' print(s1 + s2)# >>>helloworld print(s1 * 2)# >>>hellohello
能夠索引取值,有序,值變id變因此是不可變類型,只能存一個值