模組是包含python定義和語句的檔案,把一組相關函式或**組織到乙個檔案中,乙個檔案即乙個模組.模組的檔名 = 模組名+字尾.py 模組之間**共享,可以相互呼叫,實現**重用.
import 模組名 #匯入乙個模組
import 模組名1[,模組名2][,模組名3] #匯入多個模組
模組和變數一樣也有作用域的區別,如果在模組的頂層匯入,則作用域是全域性的;如果在函式中匯入,則作用域是區域性的.乙個模組只能被載入一次,無論它被匯入多少次,這樣可以阻止多重匯入時,**被多次執行.在實際編碼時,推薦直接在頂層匯入.
匯入的模組也分幾種,有python的標準庫模組,第三方模組和應用程式自定義的模組.如果是第一次匯入,模組將被載入並執行,載入執行時在搜尋路徑中找到指定的模組,之後再呼叫時就不需要再次載入了.
示例:
import sys
print sys.platform
當引用模組裡面的函式時,就要使用」模組名.函式名」引用.
如果不使用模組名,而直接用函式名進行呼叫,就需要在匯入時指定需要使用的模組的屬性.
from 模組名 import 屬性名
from 模組名 import (屬性名1)[,屬性名2][,屬性名3]...
還可以使用as關鍵字為模組屬性重新命名.
import 模組名 as 模組新名稱
from 模組名 import 屬性名 as 屬性新名稱
當程式中的模組非常多時,可以把模組再進行劃分,組織成包.包實際上就是乙個目錄,但必須包含乙個__init__.py檔案.__init__檔案可以是乙個空檔案,表示當i安目錄是乙個包.包可以巢狀使用,包中還可以包含其他子包.
模組名稱
說明copy
複製keyword
記錄關鍵字
random
獲得隨機數
sys空盒子shell程式
time
得到時間
- random模組
方法操作
random()
生成乙個隨機浮點數(0.0~1.0)
uniform([上限],[下限])
在設定的範圍內產生乙個浮點數
randint([上限],[下限])
隨機生成設定範圍內的乙個整數
choice(序列)
從該序列中選取乙個隨機的元素返回
shuffle(序列)
隨機打亂乙個序列中元素的順序
sample(序列,長度)
從指定的序列中隨機擷取指定長度的片段,序列本身不作修改
示例:
import random
print random.uniform(1, 5)
print random.randint(0, 1)
list1 = ['a','b','c']
print random.choice(list1)
random.shuffle(list1)
print list1
屬性/方法
操作path
獲取模組的搜尋路徑,初始化時使用pythonpath環境變數的值
platform
獲取作業系統平台的名稱
version
獲取直譯器的版本資訊
maxint
最大的int值
maxunicode
最大的unicode值
stdin
讀取資訊到shell程式中
stdout
向sshell程式輸出資訊
exit()
退出shell程式
- time模組
各種操作時間的方法.
屬性/方法
操作time()
獲取localtime()
獲取當前時間的元組形式
ctime()
獲取當前時間的字串形式
asctime(t)
將時間轉換成字串,引數t時元組形式的時間
sleep(secs)
按指定的時間推遲執行,引數是推遲的時間,單位是秒
模式操作說明r
讀取檔案必須存在w寫入
如果檔案存在,會先清空其中資料,在重新建立a追加
如果檔案不存在,現自動建立檔案.所有寫入的資料都將追加到檔案的末尾
b二進位制檔案
注意:開啟之後記得close();
file = open("c:/users/administrator/desktop/test.txt",'w')
file.write("veng")
file.close()
file = open("c:/users/administrator/desktop/test.txt","r")
print file.read(3) #讀取多少個字元
file.readline() #讀取一行
file.close()
補充:還有其他讀寫模式(r+,w+,a+);r+表示不清除原始檔內容,讀寫方式開啟,而新添的資料在檔案尾部;w+表示清除原始檔內容,讀寫方式開啟,讀不到原始檔內容;a+表示吧檔案指標移到檔案末尾,在檔案末尾可以繼續些資料,度資料不受影響.
從python2.2開始引進了迭代器和檔案迭代.
for
line
infile:
print line
方法
操作open()
建立並開啟檔案
file.close()
關閉檔案
file.fileo()
返回檔案的描述符
file.read(size = -1)
從檔案讀取size個位元組,當size<0時,讀取剩餘的所有位元組,作為字串返回
file.readline(sizhint=0)
從檔案中讀取並返回一行(包括行結束符),或返回最大的size個字元
file.readlines(sizhint=0)
讀取檔案的所有行並作為乙個列表返回(包括所有行結束符).如果給定的sizhint且大於0,將返回總和大約為sizhint位元組的行
file.seek(off,whence = 0)
相對於whence位置的偏移offset.0代表檔案的開始,1代表當前位置,2代表檔案末尾
file.write(str)
向檔案寫入字串
file.writeline(seq)
向檔案寫入字串序列seq
目錄操作可以使用python的os模組.
- 獲取當前路徑–getcwd()
import os
print
os.getcwd() #獲取當前路徑
print
os.listdir(os.getcwd())
os.mkdir("python") #預設目錄建立在當前目錄下.
os.rmdir("python") #刪除目錄
print
os.path.isdir("python")
print
os.path.isfile("python")
o = os.walk("c:/users/administrator/desktop/")
print [f for f in o]
python檔案操作與模組 7
1.3定位讀取 2.模組 module 及目錄操作 檔案操作的流程 序號用途 方法功能 1開啟 關閉 f open file 開啟檔案 2close 關閉檔案 3讀寫檔案內容 f.read size 從檔案中讀取指定的位元組數 若未指定,讀取所有 4f.readline size 讀取整行,包括 n...
Python 檔案操作 pickle模組
python中關於對檔案的操作存在這樣乙個問題 從檔案中讀取資料時返回的是字串。將各種型別的python物件寫入檔案是很容易的,但是將這些型別的資料從檔案中恢復出來是比較難的一件事。但是python提供的pickle模組可以幫助我們實現這樣的操作。pickle模組幾乎可以將所有的python物件都轉...
Python檔案操作模組shutil
shutil.copyfileobj fsrc,fdst length import shutil f1 open 1.txt r encoding utf 8 f2 open 2.txt w encoding utf 8 shutil.copyfileobj f1,f2 f1.close f2.c...