Python包和模組

2021-10-03 02:15:59 字數 3791 閱讀 3091

# yeld關鍵字生成生成器

deftest

(n):

for i in

range(1

,n +1)

:yield i # yield 暫停函式執行,並返回yield後面表示式的值

# 得到生成器

res = test(10)

# print(res,type(res)) # 輸出:

# 生成器不能隨機訪問,使用next()函式獲取下乙個值,資料取完後,不能在呼叫next函式,否則會出現stopiteration

# print(next(res)) # 輸出1

# print(next(res)) # 輸出2

# print(next(res)) # 輸出3

# 生成器只能遍歷一次,下面不會有任何輸出

for x in res:

print

(x)# 可以這樣寫

for x in test(10)

:print

(x)# 不會有任何輸出,生成器:res = test(10) 只能遍歷一次

# for i in res:

# print(i)

# 高仿range()函式

defmy_range

(start,end,step =1)

: i =

0while

true

: value = start + step * i

i +=

1if value >= end:

return

yield value

# 生成器表示式

'''表示式 for var in 可迭代物件

'''gen =

(value for value in my_range(0,

100,2)

)print

(type

(gen)

)# 輸出:

for i in gen:

print

(i,end=

" ")

import collections.abc

# 判定可迭代物件

print

(isinstance

(,collections.iterable)

)# 將迭代物件轉換為迭代器

list1 =[2

,4,5

,6]# print(next(list1)) #typeerror: 'list' object is not an iterator

res =

iter

(list1)

# iter可以將可迭代物件轉換為迭代器

print

(next

(res)

)print

(next

(res)

)

標準庫

說明builtins

內建函式預設載入

math

數學庫random

生成隨機數

time

時間datetime

日期和時間

calendar

日曆hashlib

加密演算法

copy

拷貝functools

常用的工具

os作業系統介面

re字串正則匹配

syspython自身的執行環境

multiprocessing

多程序threading

多執行緒json

編碼和解碼json物件

logging

記錄日誌,除錯

'''

import語句模組順序:

python標準庫

第三方庫

自定義庫

'''# 使用import匯入標準庫模組 as 給模組起別名

import datetime as t # 匯入時間日期模組

print

(t.datetime.now())

# import一次匯入多個模組,不推薦

import datetime,math,os,sys

# 使用from...impor匯入具體模組名

from django.db import models

import sys              # 匯入標準模組sys

print

(sys.path)

# 輸出具體目錄

'''['e:\\千鋒教育\\第16_模組\\**',

'e:\\千鋒教育',

'e:\\venv\\django2.0\\scripts\\python38.zip',

'e:\\venv\\django2.0\\dlls',

'e:\\venv\\django2.0\\lib',

'e:\\venv\\django2.0\\scripts',

'e:\\python3.8.1\\lib',

'e:\\python3.8.1\\dlls',

'e:\\venv\\django2.0',

'e:\\venv\\django2.0\\lib\\site-packages']

'''

4.3.1 臨時新增
# 該方法新增的目錄旨在執行當前檔案的視窗中有效,視窗關閉後即失效

import sys

'e:/program/python/code/demo'

)# 臨時新增

4.3.2 增加.pt**件(推薦)

4.3.3 在pythonpath環境中新增

pinetree =

'我是一棵松樹'

# 定義全域性變數

deffun_christmastree()

:# 定義函式

''' 功能:測試乙個夢

:return: 無

'''pinetree =

'掛上彩燈,禮物...我變成一棵聖誕樹@^.^@ \n'

# 定於區域性變數

print

(pinetree)

#*****************判斷是否以主程式的形式執行******************************#

if __name__ ==

'__main__'

:print

('\n下雪了...\n'

)print

('**********====開始做夢***************='

) fun_christmastree(

)#呼叫函式

print

('***************夢醒了***************=='

) pinetree =

'我身上落滿雪花'

+ pinetree +

'-_-'

#為全域性變數賦值

print

(pinetree)

#輸出全域性變數

'''輸出:

下雪了...

**********====開始做夢***************=

掛上彩燈,禮物...我變成一棵聖誕樹@^.^@

***************夢醒了***************==

我身上落滿雪花我是一棵松樹-_-

'''

python 模組和包 python模組和包

一.模組 python 模組 module 是乙個 python 檔案,以 py 結尾,包含了 python 物件定義和python語句。模組能定義函式,類和變數,模組裡也能包含可執行的 二.匯入模組 1.語法 import模組名from 模組名 import功能名from 模組名 import i...

Python 模組和包

包 模組的一種組織結構 乙個包由多個模組構成,即包含多個.py檔案 1匯入包的幾種形式 1 import module 將module模組中屬性列表的所有屬性匯入執行環境,使用時需要新增模組名稱,例如 module.func 2 from module import attrname,fucnnam...

python 模組和包

1.內建模組 本身就帶有的庫,就叫做python的內建的庫。模組 庫 一些常見的內建模組 os 和作業系統相關 os.path sys 和系統相關 sys.path re 正規表示式 2.第三方模組 非python本身自帶的庫,就是所謂的第三方的庫 3.模組的匯入 import as yy from...