import 到首次匯入模組的時候會發生如下3步操作
開啟模組檔案
執行模組對應的檔案,將執行過程中產生的名字都丟到模組的命名空間
在程式中會有乙個模組的名稱指向模組的命名空間去
第三方模組安裝位置,在python安裝 目錄下的lib/site- packages/目錄下。
import time
print
(time.ctime(
))
匯入模組中部分函式,可以不用加模組名字首,直接使用
from … import 首次匯入發生了3個步驟
以模組為準創造個模組的命名空間
執行模組對應的檔案了,將執行過程中產生的名字都丟到模組的命名空間
在當前執行檔案的命名空間中拿到乙個名字,該名字直接指向模組中的某乙個名字
from time import ctime
print
(ctime(
))
import time as timea
print
(timea.ctime(
))
方法
解釋os.getcwd()
獲取當前工作目錄,即當前python指令碼工作的目錄路徑
os.chdir (「dimname」)
改變當前指令碼工作目錄:相當於shell下cd
os.curdir
返回當前目錄:()
os.pardir
獲取當前目錄的父目錄字串名: ("…")
os.makedirs("dir1/dir2)
可生成多層遞迴目錄
os.removedirs( dirname1)
若目錄為空,則刪除,並遞迴到上一級目錄,如若也為空則刪除,依此類推
os.mkdir(』 dimname』)
生成單級目錄:相當於shell中mkdir dimname
os.rmdir( dimname』)
刪除單級空目錄,若目錄不為空則無法刪除,報錯列
os.llistdir( dirname)
出指定目錄下的所有檔案和子目錄,包括隱藏檔案,並以列表方式列印
os.remove()
刪除乙個檔案
os.rename(「oldname」,「new」)
重新命名檔案/目錄
os.stat( path/filename』)
獲取檔案/目錄資訊
os.sep
作業系統特定的路徑分隔符,win下 為"\\
",linux下為"/
"
os.linesep
當前平台使用的行終止符,win 下為"\t\n
".linux下為"\n
」
os.pathsep
用於分割檔案路徑的字串
os.name
字串指示當前使用平台。win->『nt』: linux->『posix』
os. system/(「bash command」)
執行shell命令,直接顯示
os.environ
獲取系統環境變數:
os path.abspath(path)
返回path規範化的絕對路徑
os.path.split(path)
將path分割成目錄和檔名二元組返回
os.path.dirname(path)
返回path的目錄。其實就是os path slit(path)的第乙個元素
os.path basename(path)
返回path最後的檔名。如何path以/或\結尾,那麼就會返回空值。即os path, split(path)的第=個元素
os.path.exists(path)
如果path存在,返回true; 如果path不存在,返回false
os.path.isabs(path)
如果path是絕對路徑,返回true
os.path.isfile(path)
如果path是乙個存在的檔案,返回true。 否則返回false
os.path.isdir(path)
如果path是乙個存在的目錄,則返回true。 否則返回false
os.path.join(path1[ path2[ ]]
將多個路徑組合後返回,第乙個絕對路徑之前的引數將被忽略
os.path.getatime(path)
返回path所指向的檔案或者目錄的最後訪問時間
os.path.getmtime(path)
返回path所指向的檔案或者目錄的最後修改時間
import os
os.rename(
'test.txt'
,'test_ 重新命名.txt'
)os.remove(
'file del.py'
)#刪除檔案前提是檔案必須存在
os.mkdir(
'testcj'
)#建立資料夾
os.rmdir(
'testcj'
)#刪除資料夾檔案必須存在
#mkdir建立一級目錄
os.mkdir(
'd: /python程式設計/sub核心'
)#不允許建立多級
#建立多級目錄
os.makedirs(
'd:/python程式設計/sub核心/**sub'
)#允許
os.rmdir(
'd:/python程式設計'
)#只能刪除空目錄
# 如果要刪除非空目錄的話,需要呼叫shutil模組
# 非空多級刪除
shutil.rmtree(
'd: /python程式設計'
)#獲取當前的目錄
print
(os. getcwd())
#路徑的拼接
# print(os.path)
print
(os . path. join(os . getcwd(),
'veny'))
#獲取python中的目錄列表
listrs=os .listdir(
'd:/'
)for dirname in listrs:
print
(dirname)
#scandir和with一起來使用這樣的話上下文管理器會在迭代器遍歷完成後自動去釋放資源
with os. scandir(
'd:/'
)as entries:
for entry in entries:
print
( entry . name)
#是否是檔案,是否是資料夾目錄
basepath=
'h:/'
for entry in os .listdir(basepath)
:if os.path. isfile(os.path. join(basepath, entry)):
print
(entry)
if os.path. isdir(os.path. join(basepath, entry)):
print
(entry)
.py就是模組,以庫的形式去封裝,可以定義類、函式、變數,只在本模組中使用
import mtest
from mtest import add
from mtest import
*
if __name__==
'__main__'
:print
('測試'
)
__all__=
['add'
]
from distutils.core import setup
# name模組名稱
# version 版本號
# description 描述
# author 作者
# py_ modules 要發布的內容
setup(name=
"mtest"
, version=
"1.0"
,description=
"my module"
,author=
"lilei"
, py_modules=
['mtest'
])
python setup.py build
python setup.py sdist
pip install mtest-
1.0.tar.gz
py學習筆記
1.切片 list l l 2 4 l 1 10 2 同matlab l 複製 tuple 0,1,2,3,4 0 3 字串2.print 預設換行 print x 不換行print x,print y,orprint x,y 3.變數賦值 不需要型別宣告 gg 100.0 i,lov,u 233,...
python學習筆記(4)
函式定義和呼叫 函式就是最基本的一種 抽象的方式 python有許多內建函式 呼叫 要呼叫乙個函式,需要知道函式 的名稱和引數 比較函式cmp x,y 就需要兩個引數,如果 x,就返回 1,如果 x y 就返回 0,如果 x y 就返回1 資料型別轉換函式,不如int 函式可以把其他資料型別轉換為整...
python學習筆記4
在編寫語句縮排時,tab鍵和空格鍵不能混用 每行 長度不宜超過79,如需換行可新增換行符 或什麼都不加 賦值方式有基本賦值和序列賦值,變數名指將剩餘的物件賦值給該變數,稱為擴充套件序列解包賦值,但乙個表示式只允許出現乙個 多目標賦值可以分開賦值,也可以引用賦值 result 及格 if score ...