three

  • 函數剩餘部分

函數的三種定義方式java

  1. 無參函數 不須要接受外部傳入的參數
  2. 有參函數 須要接受外部傳入的參數 注意傳參數時多一不可、少一不可

 

 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表明什麼都不作
View Code

注意:空函數(遇到一些比較難的功能,會致使暫時沒法編寫代碼,因此通常在生產開發中,都會將全部功能實現定義爲空函數)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模塊

//獲取時間戳

printtime.time())

//等待10

time.Sleep10

 

Os   

Import os      能夠與操做系統中的文件交互

Os.path //拿到os裏的全部操做路徑

Printos.path.exeits(‘tank.txt’))     //判斷是否在當前目錄下,這裏的例子只輸入了一個相對路徑 正確返回True 錯誤False

Printos.path.exeits(r‘。。。。。。。。。。。。’))    //絕對路徑

拿到路徑,判斷路徑是否存在

 

獲取當前目錄的根目錄 見上

 

sys

Import sys

Print(sys.path)   //獲取pytho在環境變量中的文件路徑

將項目的路徑追加到用戶安裝的python.Exe路徑

 

 

 

 

  • 爬蟲基本原理

只提取到有價值的信息,

爬蟲就是模擬成瀏覽器 向目標站點發送請求,得到想要的有價值的部分

只須要關注http協議便可

 

 

須要關注的信息:

Cookie 可能須要關注 有時候須要跳過認證 才能得到信息

User-agent他來判斷你的瀏覽器和設備 證實你是瀏覽器 而不是機器人

Host 要肯定目標網站的訪問流程 肯定需不須要帶上

 

 

 

    1. Requests模塊

 

 

 

 

 

能夠從國內清華源裏下載 加快速度

<>返回的都是一個對象

 

 

 

爬取視頻

檢查 左上角箭頭  定位到網頁的某一部分(視頻)位置

雙擊鼠標獲得視頻路徑

 

 

點擊視頻那快 就能夠獲得視頻的路徑

 

網視頻的url發送請求

圖片 視頻返回的都是二進制流 res.content

把這些二進制流寫進本地 就是一個完整視頻

with open(‘視頻.mp4’wb’)as f

f.write(res.content)

 

 

打開你爬取到的視頻的文件夾

本站公眾號
   歡迎關注本站公眾號,獲取更多信息