目錄
- 一、變量與數據類型
- 1、變量
- ① 變量的命名規則
- 2、字符串常用的庫函數
- 二、列表
- 1、列表的基礎定義
- 2、列表常用的庫函數
- 3、for循環與列表
- 4、列表切片
- 5、元組
- 三、if語句
- 四、字典
- 1、字典定義
- 2、對字典的操作
一、變量與數據類型
1、變量
① 變量的命名規則
- 只能包含數字、字母以及下劃線。且只能以字母與下劃線開頭,不能以數字開頭。
- 變量名稱不能包含空格,可以以下劃線分隔單詞。
- 不能以python中的關鍵字和函數名作為變量名
- 變量名應該簡潔而又富有描述性
注:python中的變量不需要聲明定義函數類型,只需要直接寫出變量名并賦值。例:age = 23 (整型變量)、message = ‘Hellow world!’(字符串)
2、字符串常用的庫函數
- 變量名.tiltle() :每個單詞首字母都改為大寫。
- 變量名.upper() :大寫所有字母
- 變量名.lower():小寫所有字母
- 變量名.rstrip():刪除字符串中末尾的空白(暫時刪除,并沒有改變原本變量)
- 變量名.lstrip():刪除字符串中開頭的空白(暫時刪除,并沒有改變原本變量)
- 變量名.strip():刪除字符出開頭語結尾的空白(暫時刪除,并沒有改變原本變量)
二、列表
1、列表的基礎定義
- 什么是列表?
由一系列按特定順序排列的元素組成集合。 - 列表的表示:
用方括號([ ])來表示,并用逗號來分隔其中元素。 - 列表的定義與訪問方式:
例:
#定義列表
fruits = ['apple','banana','mango','pear','cherry']
#訪問并輸出第一個元素
print(fruits[0].title())
注: a. python的列表第一個元素的索引為0,而不是1。
b. python中可以從后方訪問元素,如最后一個元素則索引指定為-1,倒數第二個元素索引表示為-2。
2、列表常用的庫函數
- 列表名.append(添加元素):在函數末尾添加元素。
- 列表名.append(添加位置 , 添加元素):在列表中插入元素。
- del 列表名[索引]:刪除列表元素。
- 列表名.pop(索引):刪除列表末尾的元素,索引位置為空則表示刪除最后一個元素。且我們通常可以用“變量名 = 列表名.pop(索引)”從而獲取要刪除的元素。
例:
#定義列表
fruits = ['apple','banana','mango','pear','cherry']
fruit1 = fruits.pop(1)
print(fruits)
print(fruit1)
輸出結果為:
[‘apple’,‘mango’,‘pear’,‘cherry’]
banana
- 列表名.remove(指定元素):可以在不清楚元素位置但知道元素內容的情況下,直接刪除該元素。
- 列表名.sort( ):對列表中的元素按ascii從小到大永久性排序(對于中文元素,則是按照unicode排序)
列表名.sort(recerse = True):與上述排序方式相反。
sorted(函數名):暫時性傳遞列表元素,原列表順序并沒有受影響。 - 列表名.reverse( ):倒序列表中元素。
- len(列表名):查看列表長度。
- range():
例:
#函數格式:range(最小值(可以取),最大值(取不到),遞增值)
numbers = list(range(2,20,3))
print(numbers)
運行結果:
[2,5,8,11,14,17]
3、for循環與列表
例:
#建立列表
names = ['alice','eric','david']
#for循環遍歷列表
for name in names:print("Hello everyone! My name is" + name.title() + ".\n")
print("END!")
運行結果:
Hello everyone! My name is Alice.
Hello everyone! My name is Eric
Hello everyone! My name is David.
END!
注:
- for循環后連續的有縮進的行都會進行循環,直到其后第一個沒有縮進的行開始不進入循環。
- python中不必要的縮進則會報錯,應該縮進的沒有縮進也會報錯。
4、列表切片
??創立切片則要指定需要的元素的第一個元素的索引和最后一個元素的索引加一。如果沒有第一個索引則自動從第一個元素開始,沒有最后一個索引則終止與列表末尾。
例1:
#定義列表
fruits = ['apple','banana','mango','pear','cherry']
#打印第2個元素到第4個元素
print(fruits[1:4])
#打印第1個元素到第2個元素
print(fruits[:2])
#打印第3個元素到最后一個元素
print(fruits[2:])
#打印最后三個元素
print(fruits[-3:])
注:應注意:列表名1 = 列表名2 與 列表名1 = 列表名2[ : ]的區別:
例2(1):
my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports[:]
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)
輸出結果:
[‘volleyball’,‘basketball’,‘badminton’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’]
my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)
輸出結果:
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]
可看出:當利用切片來給列表相互賦值時買兩個列表是相互獨立的兩個列表。而利用列表名直接進行賦值,實際上得到的還是原來的那個列表,只不過兩個列表名都可以表示這個列表,相當于又建立了一個列表名關聯到原列表。
5、元組
??元組看起來與列表相似,但使用圓括號而不是方括號。
??元組元素可以通過索引來進行訪問,但不能利用索引來進行修改元素內容,如果想對元組進行修改,則需要對列表進行重新賦值。
例:
fruits = ('apple','banana','mango','pear','cherry')
#錯誤修改
fruits[0] = 'durian'
#正確修改
fruits = ('durian','banana','mango','pear','cherry')
??元組元素也可以像列表一樣直接運用for循環進行遍歷
三、if語句
例1、if常規用法
a = input("請猜測我的年齡:")
a = int(a)
#if語句作為接下來語句是否執行的條件
if a == 19 :print("猜對了!")
elif a > 19print("您猜測的過大!")
elseprint("您猜的過小!")
例2、if語句在列表中的使用
fruits = ['apple','banana','mango','pear','cherry']
fruit = input()
if fruit in fruits:print("該水果本水果店有售!")
if fruit not in fruits:print("該水果本水果店不售或售罄!")
四、字典
1、字典定義
??字典由一系列鍵-值對組成,每一個鍵都與一個值相關聯。(與鍵相關的值可以是數字、字符串、列表以及另一個字典)
??鍵-值對是兩個相關聯的值。當指定鍵時,會返回與之相對應的值。鍵與值之間以冒號隔開。
例:
fruits = {'apple':'red','banana':10,'cherry':15}
print(fruit['apple'])
輸出結果
red
2、對字典的操作
- 對空字典進行添加
fruits = {}
fruits['apple'] = 'red'
fruits['banana'] = 'yellow'
fruits['cherry'] = 15
print(fruits)
輸出結果
{‘apple’:‘red’,‘banana’:‘yellow’,‘cherry’:15}
- 修改字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
fruits['apple'] = 'green'
fruits['cherry'] = fruits['cherry'] + 5
- 刪除鍵-值對
fruits = {'apple':'red','banana':10,'cherry':15}
del fruits['apple']
print(fruits)
輸出結果:
{‘banana’:10,‘cherry’:15}
- 遍歷字典中所有鍵
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的值時,可以使用方法keys()
for fruit in fruits.key():print(fruit.title())
輸出結果:
Apple
Banana
Cherry
- 遍歷字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的鍵時,可以使用方法keys()
for fruit in fruits.values():print(fruit.title())
- 遍歷字典中的鍵-值對
fruits = {'apple':'red','banana':10,'cherry':15}
for key,value in fruits.items( ) :print("\n Key:" +key)print("Value:" + value)
輸出結果:
Key:apple
Value:red
Key:banana
Value:10
Key:cherry
Value:15
- 列表中嵌套字典
byd = {'prize' : '15w','clore' : 'red'}
bmw = {'prize' : '40w','clore' : 'white'}
audi = {'prize' : '35w','clore' : 'black'}cars = [byd,bmw,audi]
for car in cars:print(car)
輸出結果:
{‘prize’ : ‘15w’,‘clore’ : ‘red’}
{‘prize’ : ‘40w’,‘clore’ : ‘white’}
{‘prize’ : ‘35w’,‘clore’ : ‘black’}
- 字典中嵌套列表
favourite_food = {
'Eric' : ['pizza' , 'hamburger'],
'Alice' : ['noodle' , 'potato'],
'Ton' : ['steak'],
}
for name,foods in favourite_food.items():print("\n" + name + "'s favourite food are:")for food in foods :print("\t" + food.title())
輸出結果:
Eric’s favourite food are:
Pizza
Hamburger
Alice’s favourite food are:
Noodle
Potato
Ton’s favourite food are:
Steak
- 在字典中嵌套字典
cars ={'bmw' : {'prize' : '40w','clore' : 'red',},'audi' : {'prize' : '25w','clore' : 'black',},
}
for car,attributes in cars.items():print('Car:' + car)print("\t價格:" + attributes['prize'] + '\t顏色:' + attributes['clore'])
輸出結果:
Car:bmw
價格:40w 顏色:red
Car:audi
價格:25w 顏色:black