Python常識備忘整理(持續補充)

一、Python代碼運行的方法和方式:

1、交互式解釋器:

Ipython

2、命令行運行Python源代碼

(1)需要注意配置好Python的環境(可以在Python安裝的時候勾選上path解決問題)

(2)在cmd下需要注意將路徑換到源代碼當前路徑(先換盤符,然後的絕對路徑)

(3)通過命令 例如   “python 循環結構.py”  在命令行模式下運行腳本文件

ps:環境配置之後也可以在命令行裏通過 python 命令進入 >>>模式

3、使用編輯器或者集成開發環境(IDE)

(1)pycharm

(2)notepad++

其中關鍵命令:

cmd /k cd "$(CURRENT_DIRECTORY)" & python "$(C:\Program Files\Python37\python.exe)" & ECHO. & PAUSE 

命令解釋略(這樣可以運行默認文件夾下的py文件) 

IDE:intergrated Development Environment

二、代碼的可讀性

1、註釋

(1)通過三個單引號進行註釋

e.g:

'''
自定義abs函數
:param x: int或者float
:return:  abs值
'''

三、函數參數

1、可變參數

e.g:

n個數求和

def my_sum(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n
    return sum

#直接調用三個參數5, 6, 1
print(my_sum(5, 6, 1))

#列表調用可變參數
nums = [1, 2, 3]
print(my_sum(*nums))

(結果 ;code_1.py是此文件腳本)

2、關鍵字參數

e.g:

調用student函數並將參數傳入

#關鍵字參數
def student(name, age, **kw):
    print('name:',name,'age',age,'others:',kw)

student('yh',18,sex='male',region='china')
#通過字典傳入
dicts = {'city':'beijing','sex':'female'}
student('mike', 78, **dicts)

(結果 ;code_1.py是此文件腳本)

**kw代表接受0個或者多個關鍵詞參數

3、可選關鍵字參數

e.g:

def student(name, age, *, city):
    print('name:',name,'age:',age,'city:',city)

student('yiyi',18,city = 'guangzhou')

(結果 ;code_1.py是此文件腳本)

如果函數調用的時候沒有關鍵字參數city或者關鍵字參數不符合要求,會報錯keyword can't be an expression。

4、其他參數

def student(name, age, *, city, **kw):
    # print('name:',name,'age:' ,age,'city:',city)
	pass

def f1(a, b, c=0, *arge, **kw):
    pass

四、推導式(列表和字典)

1、列表推導式

new_list = [expression1 for variable in old_list if expression2]

import requests
response = requests.get("http://www.metoffice.gov.uk/pub/data/weather/uk/climate/stationdata/heathrowdata.txt")
# print(response.text)
print('ok')

# with open('response_metoffice.txt','w') as f:
	# f.write(response.text)  #寫入文檔
	

#定義兩個列表用於逐行存放所有天氣數據&每個月的雨水量
weatherEveryMonth = []
rainMMEveryMonth = []

for row in response.text.split("\r\n")[7:]:
	row_Lise = [element for element in row.split(" ")if element]  #if element
	weatherEveryMonth.append(row_Lise)
	rainMMEveryMonth.append(float(row_Lise[5]))

這裏的  if element 不加會引起錯誤,但是還沒有研究處爲什麼不可以不加。。。

2、字典推導式

new_dict = [expression1:expression2 for variable in list if expression3]

(或者參考異步社區中的《Python快速入門(第3)》的8.4節的例子https://www.epubit.com/onlineEbookReader?id=6b4c65d6-597b-4c47-b5fa-43fc717b6406&pid=a3a566cd-e415-4edb-af48-47f5081b4201&isFalls=true)

等待補充。。。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章