22 Python基礎學習筆記1

2021-09-02 19:01:59 字數 4389 閱讀 9200

練習題:

1.簡述編譯型與解釋型語言的區別,且分別列出你知道的哪些語言屬於編譯型,哪些屬於解釋型

編譯型語言:就好比一本教科書,不管用到哪乙個知識點,編譯型語言首先做的就是先將整本書所涉及的知識點都解釋一遍。 比如輸入一串命令,先標準輸入,然後根據編譯環境去找到翻譯內容,傳給計算機,最後cpu處理

解釋型語言:你需要哪一段,我給你解釋哪一段,不用整本書翻譯一遍,比較靈活,但是效率慢。標準輸入後,需要先pyc快取乙個,然後進入虛擬機器,在轉換成機器識別語言,最後cpu執行

2.執行 python 指令碼的兩種方式是什麼

python hello.py

#!/usr/bin/env python :不確定直譯器具體路徑

#!/usr/bin/python :在知道直譯器安裝的路徑時可以使用該方式。

3.pyhton 單行注釋和多行注釋分別用什麼?

單行注釋:井號

多行注釋:多引號

4.布林值分別有什麼?

true&false

5.宣告變數注意事項有那些?

keyword.kwlist

變數名不能有空格,可以用下劃線連線

最好首字母大寫

常量就變數名都大寫

不可以數字開頭

name="alex"

print(id(name).__doc__)

7.寫**i.實現使用者輸入使用者名稱和密碼,當使用者名為 seven 且 密碼為 123 時,顯示登陸成功,否則登陸失敗!

u=["zhang",123]

username=input("input name:")

password=int(input("input password:"))

if username == u[0] and password == u[1]:

print("login success!")

else:

print("false")

u=["zhang","123"]

def login(x,y):

if x == u[0] and y==u[1]:

print("success")

else:

print("false")

login(x=input("user:"),y=input("pass"))

ii.實現使用者輸入使用者名稱和密碼,當使用者名為 seven 且 密碼為 123 時,顯示登陸成功,否則登陸失敗,失敗時允許重複輸入三次

u=["zh","123"]

count=0

while count <3:

user_name=input("input username>>> ")

pass_word=input("input password>>> ")

if user_name==u[0] and pass_word ==u[1]:

print("success!")

break

else:

print("false")

count +=1

iii.實現使用者輸入使用者名稱和密碼,當使用者名為 seven 或 alex 且 密碼為 123 時,顯示登陸成功,否則登陸失敗,失敗時允許重複輸入三次

count=0

user_info="zh:123#ch:123"

user_list=user_info.split("#")

user_dict={}

for i in user_list:

item=i.split(":")

user_dict[item[0]]=item[-1]

username=input("input user>>> ")

if username in user_dict:

while count < 3:

password = input("input pass>>> ")

if password == user_dict[username]:

print("sueccess")

exit()

else:

print("密碼錯誤")

count += 1

else:

print("user error")

8.寫**

a. 使用while迴圈實現輸出2-3+4-5+6...+100 的和

我的想法是:用偶數相加和減去奇數相加和

count=2

l=a=

while count <=100:

if count%2 ==0:

else:

count +=1

print(sum(l))

print(sum(a))

print(sum(a)-sum(l))

b. 使用 while 迴圈實現輸出 1,2,3,4,5, 7,8,9, 11,12 d.

count =1

l=while count<=12:

if count !=6 and count !=10:

count +=1

print(l)

d.使用 while 迴圈實現輸出 1-100 內的所有奇數

count=0

l=while count <100:

if count%2 !=0:

count +=1

print(l)

e. 使用 while 迴圈實現輸出 1-100 內的所有偶數

count=0

l=while count<=100:

if count%2==0:

print(sum(l))

count +=1

print(l)

9.現有如下兩個變數,請簡述 n1 和 n2 是什麼關係?

n1 = 123456

n2 = n1

答:n2是n1的因變數,隨著n1改變而改變

10.製作趣味模板程式(程式設計題)

需求:等待使用者輸入名字、地點、愛好,根據使用者的名字和愛好進行任意顯示

如:敬愛可愛的***,最喜歡在***地方幹***

def mode():

name=input("what's your name>>>")

address=input("home add>>>")

job=input("input job>>>")

print('''

------------%s的個人資訊-----------

name :%s

address :%s

job :%s

'''%(name,name,address,job))

if __name__=='__main__':

mode()

11.輸入一年份,判斷該年份是否是閏年並輸出結果。(程式設計題)

注:凡符合下面兩個條件之一的年份是閏年。 (1) 能被4整除但不能被100整除。 (2) 能被400整除。

year=int(input("input year>>> "))

if year%4 ==0:

print("%s年是閏年"%year)

else:

print("不是閏年")

def year(n):

if n%4==0:

print("閏年")

else:

print("no")

if __name__ == "__main__":

year(n=int(input("input year>>>")))

12.假設一年期定期利率為3.25%,計算一下需要過多少年,一萬元的一年定期存款連本帶息能翻番?(程式設計題)

假定一年計算一次,結果是22年連本帶利翻一倍,如果固定一萬元不變,需要三十年翻倍。

count=0

n=0.0325

l=while true:

if count >1:

print(count)

print(len(l))

break

else:

count += n*(count+1)

2017 11 19以及22Python 學習筆記

迴圈語句 for i in range 執行的次數 比如 for i in range 10 迴圈十次 簡單的溫度轉換程式 tempconvert.py val input 請輸入帶溫度表示符號的溫度值 例如 32c if val 1 in c c f 1.8 float val 0 1 32 pr...

22 python基礎11 遞迴函式

1.定義 在函式內部,可以呼叫其他函式。如果乙個函式在內部呼叫自身本身,這個函式就是遞迴函式。階乘例項 1 n int input 2 3 4 def f n 5 s 1 6 for i in range 2,n 1 7 s i 8 return s 9 print f n 遞迴 1 def fac...

22 python資料序列(集合)

說實話,我也不知道該如何引入集合這個概念。在我沒有學習python之前,集合在我的腦海裡一直是乙個數學概念,對比與python當中的集合其實也差不了多少。總而言之,記住集合的特點就行,一方面其物理結構與邏輯結構不一致,他是無序的,另一方面,集合具有去重功能 兩種方式建立乙個集合,第一種是運用 第二種...