函數的三種定義方式java
1 # 函數的三種定義方式 2 # 無參函數 3 # 不須要接收外部傳入的參數 4 def foo(): 5 print('from foo..') 6 foo() 7 8 9 10 # 有參函數 11 # 須要接收外部傳入的參數 12 def login(user, pwd): 13 14 print(user, pwd) 15 # 16 # # 傳參多一或少一不可 17 login('tank', '123') 18 # login('tank', '123', 111) # 多,報錯 19 # login('tank') # 少,報錯 20 21 # x = 10 22 # y = 20 23 # 24 # if x > y: 25 # 26 # print(x) 27 # 28 # else: 29 # print(y) 30 31 # 比較兩數大小 32 def max2(x, y): 33 34 if x > y: 35 36 print(x) 37 38 else: 39 print(y) 40 41 max2(10, 30) 42 43 44 45 # 空函數 46 # 遇到一些比較難實現的功能,會致使暫時沒法繼續編寫代碼。 47 # 因此通常在生產開發中,都會將全部功能實現定義成空函數。 48 def func(): 49 pass # pass表明什麼都不作
注意:空函數(遇到一些比較難的功能,會致使暫時沒法編寫代碼,因此通常在生產開發中,都會將全部功能實現定義爲空函數)python
def func():程序員
pass //pass表明什麼都不作數據庫
調用函數 你須要調用這個函數時,須要接受函數體內部產生的結果,用return返回值json
有ruturn 和無return:瀏覽器
x = 10
y = 20
if x > y:
print(x)
else:
print(y)ide
注意:調用階段纔會執行函數體代碼,定義階段不會執行函數體代碼!!函數
Print(函數名) 指向的是該函數的內存地址網站
函數名 返回的是函數的地址url
函數名()返回的是調用函數的參數
字典選擇 經過key的值選擇內容
函數嵌套
嵌套定義:
在函數內,定義函數
函數調用
...
Way1
Way2
調用階段纔會執行函數體代碼,定義階段不會執行函數體代碼
函數的名稱空間 和做用域
Python解釋器 冒藍光說明這個各模塊是解釋器自帶給你的:內置名稱空間(python自帶的)
自定義的py文件內,頂着最左邊定義的:全局名稱空間
函數體內部定義的:局部名稱空間
內置名稱空間
找變量
(查找順序) 先在局部裏找,再去全局裏找 ,再到內置 python解釋器終找
(加載順序) 啓動python解釋器 再去全局 再去局部
面向對象的意思
模塊與包 看一下博客 不太明白
文件夾稱爲模塊
把文件.py導入進來來了 會自動執行裏面的內容
Import 模塊名
Json第三方數據格式 picklepython自帶數據格式 字典python語言獨有的
把python數據字典的給java程序用 存到數據庫裏 轉成json格式 其餘種類的程序員才能夠用
把字典內容變成json數據 寫入文件中 json_data (序列化)而後轉化成字符串str形式寫入文件中
從文件中讀出字符串 轉成json格式 再反序列化變成python格式
user_info={
‘name’:‘tank’
‘pwd’:‘123’
}
Dumps
Loads
Dump 自動觸發f.write功能
Load 自動觸發f.read方法
Time時間戳
Import time //導入time模塊
//獲取時間戳
print(time.time())
//等待10秒
time.Sleep(10)
Os
Import os 能夠與操做系統中的文件交互
Os.path //拿到os裏的全部操做路徑
Print(os.path.exeits(‘tank.txt’)) //判斷是否在當前目錄下,這裏的例子只輸入了一個相對路徑 正確返回True 錯誤False
Print(os.path.exeits(r‘。。。。。。。。。。。。’)) //絕對路徑
拿到路徑,判斷路徑是否存在
獲取當前目錄的根目錄 見上
sys
Import sys
Print(sys.path) //獲取pytho在環境變量中的文件路徑
將項目的路徑追加到用戶安裝的python.Exe路徑
只提取到有價值的信息,
爬蟲就是模擬成瀏覽器 向目標站點發送請求,得到想要的有價值的部分
只須要關注http協議便可
須要關注的信息:
Cookie 可能須要關注 有時候須要跳過認證 才能得到信息
User-agent他來判斷你的瀏覽器和設備 證實你是瀏覽器 而不是機器人
Host 要肯定目標網站的訪問流程 肯定需不須要帶上
能夠從國內清華源裏下載 加快速度
<>返回的都是一個對象
爬取視頻
檢查 左上角箭頭 定位到網頁的某一部分(視頻)位置
雙擊鼠標獲得視頻路徑
點擊視頻那快 就能夠獲得視頻的路徑
網視頻的url發送請求
圖片 視頻返回的都是二進制流 res.content
把這些二進制流寫進本地 就是一個完整視頻
with open(‘視頻.mp4’,‘wb’)as f:
f.write(res.content)
打開你爬取到的視頻的文件夾