目錄
一、列表
1.1、列表的定義
代碼:
classNames = ["xiaoming","xiaohong","xiaodong"]
print[classNames[0]] #獲取元素1
print[classNames[1]] #獲取元素2
print[classNames[2]] #獲取元素3
1.2、遍歷列表
代碼:
classNames = ["xiaoming","xiaohong","xiaodong"]
#for循環遍歷
for name in classNames:
print(name)
#while循環遍歷
length = len(classNames)
i = 0
while i < length:
print(classNames[i])
i+=1
輸出結果:
1.3、增刪改查
classNames = ["xiaoming","xiaohong","xiaodong"]
'''
添加元素
'''
classNames.append("xiaowang") #向後添加元素
names = ["leon","ben","tina"] #定義新列表
classNames.extend(names) #將names列表添加到classNames列表中
classNames.insert(2,"susu") #指定位置前插入元素
'''
修改元素
'''
classNames[2] = "lala" #修改元素
'''
查詢元素
'''
findName = "haha"
if findName in classNames : #使用in和not in 查詢
print("存在此人")
else :
print("沒有此人")
result = classNames.index("lala" ,0,5) #index查詢
print(result)
result = classNames.count("xiaodong") #count查詢
print(result)
movieName = ['加勒比海盜','駭客帝國','第一滴血','指環王','霍比特人','速度與激情']
'''
刪除元素
'''
del movieName[2] #通過下標刪除
movieName.pop() #從後往前刪
movieName.remove("指環王") #指定名字刪除
1.4、列表嵌套
classNames = [["xm","xh"],
["leon","tine"],
["A","B","C"]]
二、元組
元組與列表類似,不同之處在於元組的元素不能修改,元組使用小括號,列表使用方括號。
代碼:
tuple = ("hello",100,3.18) #定義元組
print(tuple[1]) #獲取元素
一旦進行修改或刪除就會報異常。
三、string字符串
3.1、定義變量s,存儲類型爲字符串
s = "hello python"
#或者
s = 'hello python'
使用“”或‘’都可以定義字符串
3.2、字符串的下標
字符串的下標即每個字符在整串字符串的位置,例如:字符串‘data’中,字符a位於第3位。爲什麼不是第4位呢?這是因爲下標都是從0開始記起
代碼:
s = 'data'
print(s[0]) #輸出字符d
print(s[1]) #輸出字符a
print(s[2]) #輸出字符t
print(s[3]) #輸出字符a
輸出結果:
當然,如果你想獲取s[4]這個位置上不存在的字符時,python會報給你一個string index out of range異常。
3.3、字符串的切片
切片指對某一段字符進行截取,例如:字符串‘abcdefg’,我要截取c-e的位置,這個就是切片。切片不僅存在於字符串中,列表、元組都支持切片操作。
切片語法:【起始:結束:長度】,截取是通過下標來進行的,值得注意的是結束的下標不包含當前位。
代碼:
s = "abcdefg"
print(s[0:5]) #截取下標爲0~5的元素
輸出結果:
由此可以看出下標爲5的字符,也就是"f"並沒有被輸出,因爲不包含當前位,數學上似乎叫左閉右開區間。還有其他的一些字符截取的方式。
代碼:
s = "abcdefg"
print(s[1:-1]) #取下標爲1到下標爲倒數第2位的區間
print(s[1:5:2]) #取下標爲1~4的區間,取2位
print(s[:3]) #從下標0開始到下標2的區間
print(s[::2]) #下標按照0,2,4,6,8...的取,似乎是遞增取值
輸出結果:
反轉字符串“abcdefg”
代碼:
s = "abcdefg"
i = -1
rever = ""
while i >= -s.__len__():
rever += s[i]
i -= 1
print(rever)
輸出結果:
3.4、字符串常見的操作
- find、index、upper等很多方法,太多不再此處列舉,等用到的時候再去查詢。具體可以找找python的文檔看看就會使用了。
- 下面給出部分字符串操作的代碼:
-
movieNames = '加勒比海盜駭客帝國第一滴血指環王霍比特人速度與激情' #find查詢字符串是否存在,存在返回第一個字符的下標,不存在返回-1 movieNames.find("第一滴血") movieNames.find("第一滴血",0,5) #index的用法和find類似,只不過index查不到會報異常而不是返回-1 movieNames.index("第一滴血") movieNames.index("第一滴血",0,20) #count是查詢字符串出現的次數 movieNames.count("一") movieNames.count("一",0,20) #replace是替換字符串 movieNames.replace("一","二") movieNames.replace("一","二",1) #如果指定替換次數,則不會超過指定的次數 ...
四、字符串格式化
字符串格式化是爲了簡化程序,例如:
pirnt("我今年10歲")
pirnt("我今年11歲")
pirnt("我今年12歲")
....
使用了字符串格式化後,代碼如下:
age = 10
while age <= 20 :
print("我今年%d歲" % age)
age += 1