使用python解釋器(python aa.py)或在unix系統下賦值成777,執行(./aa.py)
二、簡述位、字節的關係api
1個byte = 8bit,在ASCII表中,一共有255個字符,一個字符佔8位。
三、簡述ascii、unicode、utf-‐八、gbk 的關係app
最初的計算機是由美國人發明的,制定了一張包含他們能用到的全部字符和計算機能理解的數字的對應關係。隨着計算機的發展和普及,各國都制定了本身的編碼,那麼ASCII也容納不了且沒法造成統一標準,就推出了Unicode(萬國碼)。utf-8是可變長的編碼,是unicode原
本佔2個字節的英文被編碼成1個字節,漢字是3個字節,生僻的字符佔4-6個字節,節省了傳輸英文編寫文檔的空間。gbk是中國人本身的字符集,容納了2萬1千多個字符。
四、請寫出「李傑」分別用utf-‐8 和gbk 編碼所佔的位數post
utf-8用6個字節表示2個漢字,gbk用4個字節
五、Pyhton 單行註釋和多行註釋分別用什麼?編碼
單行註釋用「#」,多行註釋用'''註釋內容'''
六、聲明變量注意事項有那些?spa
(1)不能以數字開頭(2)只能是字母、數字或下劃線的任意組合,但不能有特殊字符(3)關鍵字一般不能聲明爲變量
八、如何查看變量在內存中的地址?unix
id(變量名)
九、執行Python程序時,自動生成的.pyc文件的做用是什麼?code
.pyc文件是由.py文件通過編譯後生成的字節碼文件,其加載速度相對於以前的.py文件有所提升,且實現了源碼隱藏,以及必定程度上的反編譯。通常是import其餘py文件的時候會生成。
十、寫代碼對象
a.實現用戶輸入用戶名和密碼,當用戶名爲seven且密碼爲123時,顯示登錄成功,不然登錄失敗。blog
user = input("Username: ").strip() passwd = input("Password: ").strip() if user == "seven" and passwd == "123": print("Welcome to back,",user) else: print("Incorrect username or password!")
b.實現用戶輸入用戶名和密碼,當用戶名爲seven且密碼爲123時,顯示登錄成功,不然登錄失敗,失敗時容許重複輸入三次
for i in range(3): user = input("Username: ").strip() passwd = input("Password: ").strip() if user == "seven" and passwd == "123": print("Welcome to back,",user) break else: print("Incorrect username or password!")
c.實現用戶輸入用戶名和密碼,當用戶名爲seven或alex且密碼爲123時,顯示登錄成功,不然登錄失敗,失敗時容許重複輸入三次
for i in range(3): user = input("Username: ").strip() passwd = input("Password: ").strip() if user == "seven" or user == "alex" and passwd == "123": print("Welcome to back,",user) break else: print("Incorrect username or password!")
十一、寫代碼
a.使用while 循環實現輸出2‐3+4‐5+6...+100的和
b.使用for 循環和range 實現輸出1-2+3‐4+5‐6...+99的和
num = 0 for i in range(99): if i % 2 == 0: num = num - i else: num = num + i print(num)
-49
c.使用while 循環實現輸出1,2,3,4,5,7,8,9,11,12
i = 0 while i < 12: i +=1 if i == 6 or i == 10: continue else: print(i)
d.使用while 循環實現輸出1-‐100內的全部奇數
i = 1 while i<=100: if i % 2 != 0: print(i) i +=1
e.使用while 循環實現輸出1-‐100內的全部偶數
i = 1 while i<=100: if i % 2 == 0: print(i) i +=1
十二、分別書寫數字5,10,32,7 的二進制表示
101 1010 100000 111
1三、簡述對象和類的關係(可用比喻的手法)
類是抽象的概念,爲全部對象定義了抽象的屬性與行爲,對象是類的一個具體。是一個實實在在的東西。好比人類是全部人的一個統稱,具體的你、我、他是其中的對象。
1四、現有以下兩個變量,請簡述n1和n2是什麼關係?
n1=123
n2=123
n1和n2指向同一塊內存地址,數值是123
1五、現有以下兩個變量,請簡述n1和n2是什麼關係?
n1=123456
n2=123456
開闢了2個內存地址存放數據123456,並分別起了個名稱爲n1和n2.
1六、現有以下兩個變量,請簡述n1和n2是什麼關係?
n1=123456
n2=n1
給數據123456起了另一個別名n2,至關於n1和n2都指向該數據的內存地址
1七、若有一下變量n1=5,請使用int 的提供的方法,獲得該變量最少能夠用多少個二進制位表示?
1八、布爾值分別有什麼?
布爾值有True和False
1九、閱讀代碼,請寫出執行結果
a="alex"
b=a.capitalize()
print(a)
print(b)
請寫出輸出結果:
print(a) alex print(b) Alex
20、寫代碼,有以下變量,請按照要求實現每一個功能
name=" aleX"
a.移除name 變量對應的值兩邊的空格,並輸入移除有的內容
b.判斷name 變量對應的值是否以"al"開頭,並輸出結果
print(name.startswith("al")) 執行結果 False
c.判斷name 變量對應的值是否以"X"結尾,並輸出結果
print(name.endswith("X")) 執行結果 True
d.將name 變量對應的值中的「l」替換爲「p」,並輸出結果
print(name.replace("l","p")) 執行結果 apeX
e.將name 變量對應的值根據「l」分割,並輸出結果。
print(name.split("l")) 執行結果 [' a', 'eX']
f.請問,上一題e分割以後獲得值是什麼類型?
列表
g.將name 變量對應的值變大寫,並輸出結果
print(name.upper()) 執行結果 ALEX
h.將name 變量對應的值變小寫,並輸出結果
print(name.lower()) 執行結果 alex
i.請輸出name 變量對應的值的第2 個字符?
print(name[1]) 執行結果 a
j.請輸出name 變量對應的值的前3 個字符?
print(name[:3]) 執行結果 al
k.請輸出name 變量對應的值的後2 個字符?
print(name[-2:]) 執行結果 eX
l.請輸出name 變量對應的值中「e」所在索引位置?
print(name.index("e")) 執行結果 3
2一、字符串是否可迭代?如能夠請使用for 循環每個元素?
name = " aleX" for i in name: print(i)
2二、請用代碼實現:利用下劃線將列表的每個元素拼接成字符串,li=['alex','eric','rain']
li = ["alex","eric","rain"] for i in li: print("_".join(i)) 執行結果 a_l_e_x e_r_i_c r_a_i_n
2二、寫代碼,有以下列表,按照要求實現每個功能
li=['alex','eric','rain']
a.計算列表長度並輸出
print(len(li)) 執行結果 3
b.列表中追加元素「seven」,並輸出添加後的列表
li.append("seven") print(li) 執行結果 ['alex', 'eric', 'rain', 'seven']
c.請在列表的第1個位置插入元素「Tony」,並輸出添加後的列表
li.insert(0,"Tony") print(li) 執行結果 ['Tony', 'alex', 'eric', 'rain']
d.請修改列表第2個位置的元素爲「Kelly」,並輸出修改後的列表
li[1] = "Kelly" print(li) 執行結果 ['alex', 'Kelly', 'rain']
e.請刪除列表中的元素「eric」,並輸出修改後的列表
li.remove("eric") print(li) 執行結果 ['alex', 'rain']
f.請刪除列表中的第2個元素,並輸出刪除的元素的值和刪除元素後的列表
>>> li.pop(1) 'eric' >>> li ['alex', 'rain']
g.請刪除列表中的第3個元素,並輸出刪除元素後的列表
>>> li = ["alex","eric","rain"] >>> li.pop() 'rain' >>> li ['alex', 'eric']
h.請刪除列表中的第2 至4 個元素,並輸出刪除元素後的列表
>>> li = ['alex', 'eric', 'rain', 'seven'] >>> del li[1:] >>> li ['alex']
i.請將列表全部的元素反轉,並輸出反轉後的列表
>>> li = ["alex","eric","rain"] >>> li.reverse() >>> li ['rain', 'eric', 'alex']
j.請使用for、len、range 輸出列表的索引
li = ["alex","eric","rain"] for index in range(len(li)): print(index,li[index]) 執行結果 0 alex 1 eric 2 rain
k.請使用enumrate 輸出列表元素和序號(序號從100 開始)
li = ["alex","eric","rain"] for index,value in enumerate(li,100): print(index,value) 執行結果 100 alex 101 eric 102 rain
l.請使用for 循環輸出列表的全部元素
li = ["alex","eric","rain"] for i in li: for item in i: print(item) 執行結果 a l e x e r i c r a i n
2三、寫代碼,有以下列表,請按照功能要求實現每個功能
li=["hello",'seven',["mon",["h","kelly"],'all'],123,446]
a.請輸出「Kelly」
>>> li = ["hello","seven",["mon",["h","kelly"],"all"],123,446] >>> li[2][1][1] 'kelly'
b.請使用索引找到'all'元素並將其修改成「ALL」
>>> li[2][2] = "ALL" >>> li ['hello', 'seven', ['mon', ['h', 'kelly'], 'ALL'], 123, 446]
2四、寫代碼,有以下元組,按照要求實現每個功能
tu=('alex','eric','rain')
a.計算元組長度並輸出
>>> tu = ("alex","eric","rain") >>> len(tu) 3
b.獲取元組的第2個元素,並輸出
>>> tu[1] 'eric'
c.獲取元組的第1--‐2個元素,並輸出
>>> tu[:2] ('alex', 'eric')
d.請使用for 輸出元組的元素
tu = ("alex","eric","rain") for i in tu: print(i) 執行結果 alex eric rain
e.請使用for、len、range 輸出元組的索引
tu = ("alex","eric","rain") for index in range(len(tu)): print(index,tu[index]) 執行結果 0 alex 1 eric 2 rain
f.請使用enumrate 輸出元祖元素和序號(序號從10 開始)
tu = ("alex","eric","rain") for index,values in enumerate(tu,10): print(index,values) 執行結果 10 alex 11 eric 12 rain
2五、有以下變量,請實現要求的功能
tu=("alex",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])
a.講述元組的特性
不可變類型,一旦一個對象被定義了,它的值就不能再被修改,若是包含可變的列表,字典等值,那這些值能夠改變
b.請問tu 變量中的第一個元素「alex」是否可被修改?
不能被修改
c.請問tu 變量中的"k2"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素「Seven」
k2對應的值是列表類型,能夠被修改. >>> tu = ("alex",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44]) >>> tu[1][2]["k2"].append("Seven") >>> tu ('alex', [11, 22, {'k1': 'v1', 'k2': ['age', 'name', 'Seven'], 'k3': (11, 22, 33)}, 44])
d.請問tu 變量中的"k3"對應的值是什麼類型?是否能夠被修改?若是能夠,請在其中添加一個元素「Seven」
k3對應的類型是元組,不能被修改
2六、字典
dic={'k1':"v1","k2":"v2","k3":[11,22,33]}
a.請循環輸出全部的key
for keys in dic.keys(): print(keys) 執行結果 k1 k2 k3
b.請循環輸出全部的value
for values in dic.values(): print(values) 執行結果 v1 v2 [11, 22, 33]
c.請循環輸出全部的key 和value
dic = {"k1":"v1","k2":"v2","k3":[11,22,33]} for k,v in dic.items(): print(k,v) 執行結果 k1 v1 k3 [11, 22, 33] k2 v2
d.請在字典中添加一個鍵值對,"k4":"v4",輸出添加後的字典
dic.setdefault("k4","v4") print(dic) 執行結果 {'k2': 'v2', 'k3': [11, 22, 33], 'k1': 'v1', 'k4': 'v4'}
e.請在修改字典中「k1」對應的值爲「alex」,輸出修改後的字典
dic["k1"] = "alex"print(dic)執行結果{'k3': [11, 22, 33], 'k2': 'v2', 'k1': 'alex'}
f.請在k3 對應的值中追加一個元素44,輸出修改後的字典
dic["k3"].append("44") print(dic) 執行結果 {'k3': [11, 22, 33, '44'], 'k2': 'v2', 'k1': 'v1'}
g.請在k3 對應的值的第1個位置插入個元素18,輸出修改後的字典
dic["k3"][0] = "18" print(dic) 執行結果 {'k3': ['18', 22, 33], 'k2': 'v2', 'k1': 'v1'}
2七、轉換
a.將字符串s="alex"轉換成列表
s = "alex" print(list(s)) 執行結果 ['a', 'l', 'e', 'x']
b.將字符串s="alex"轉換成元組
s = "alex" print(tuple(s)) 執行結果 ('a', 'l', 'e', 'x')
b.將列表li=["alex","seven"]轉換成元組
li = ["alex","seven"] print(tuple(li)) 執行結果 ('alex', 'seven')
c.將元組tu=('Alex',"seven")轉換成列表
tu = ("alex","seven") print(list(tu)) 執行結果 ['alex', 'seven']
d.將列表li=["alex","seven"]轉換成字典且字典的key 按照10開始向後遞增
li = ["alex","seven"]
dic = {}
for i,v in enumerate(li,10):
dic.setdefault(i,v)
print(dic)
執行結果 {'seven': 11, 'alex': 10}
2七、轉碼
n="老男孩"
a.將字符串轉換成utf-‐8 編碼的字節,並輸出,而後將該字節再轉換成utf-‐8 編碼字符串,再輸出
print(n.encode(encoding="utf-8")) 執行結果 b'\xe8\x80\x81\xe7\x94\xb7\xe5\xad\xa9' print("\xe8\x80\x81\xe7\x94\xb7\xe5\xad\xa9".encode(encoding="utf-8")) 執行結果 b'\xc3\xa8\xc2\x80\xc2\x81\xc3\xa7\xc2\x94\xc2\xb7\xc3\xa5\xc2\xad\xc2\xa9'
a.將字符串轉換成gbk 編碼的字節,並輸出,而後將該字節再轉換成gbk 編碼字符串,再輸出
print(n.encode(encoding="gbk")) 執行結果 b'\xc0\xcf\xc4\xd0\xba\xa2' print("\xc0\xcf\xc4\xd0\xba\xa2".encode(encoding="gbk")) 執行結果 UnicodeEncodeError: 'gbk' codec can't encode character '\xc0' in position 0: illegal multibyte sequence
2八、求1-‐100 內的全部數的和
a = 0 for i in range(0,100): a += (i+1) print(a) 執行結果 5050
2九、元素分類
有以下值集合[11,22,33,44,55,66,77,88,99,90],將全部大於66的值保存至字典的第一個key 中,將小於66的值保存至第二個key 的值中。即:{'k1':大於66 的全部值,'k2':小於66 的全部值}
30、購物車
功能要求:
要求用戶輸入總資產,例如:2000
顯示商品列表,讓用戶根據序號選擇商品,加入購物車
購買,若是商品總額大於總資產,提示帳戶餘額不足,不然,購買成功。
goods=[{"name":"電腦","price":1999},
{"name":"鼠標","price":10}, {"name":"遊艇","price":20}, {"name":"美女","price":998},]