python當前腳本路徑
以Python2.7操作為例:
1、首先需要打開電腦桌面,按開始的快捷鍵,點擊Python2.7如圖所示的選項進入。
㈡ linux執行python腳本
linux執行python腳本需要分五步進行,下面是具體介紹:
1、輸入cat/proc/version,查看Linux內核版本號、gcc編譯器版本號和Ubuntu版本號;
2、輸入python3--version查看安裝的python3版本號;
3、輸入vifirst.py,新建一個較first.py的腳本;
4、輸入vifirst.py後按回車,然後按Insert鍵,然後編輯該腳本,輸入如下代碼:
print(「helloworld」)。
然後按Esc鍵,然後輸入:(冒號),然後輸入wq按回車保存退出;
5、輸入pythonfirst.py運行該腳本,屏幕便會顯示helloworld;
6、輸入ls按回車,即可看到當前路徑下有這個first.py腳本。
以上就是小編今天的分享了,希望可以幫助到大家。
㈢ python有多少個模塊(python常用的模塊有哪些)
今天給各位分享python有多少個模塊的知識,其中也會對python常用的模塊有哪些?進行解釋,如果能碰巧解決你現在面臨的問題,別忘了關注本站,現在開始吧!
一、導入模塊
importmole
frommole.xximportxx
frommole.xximportxxasrename
frommole.xximport*
二、開源模塊
yum、pip、apt-get
源碼編譯安裝:Pythonsetup.pybuildPythonsetupinstall
三、常用模塊
os模塊#用作系統級別的工作
sys模塊#提供解釋器相關操作
hashlib模塊#用於加密相關的操作
json和pickle模塊#用於序列化數據
subprocess模塊
shuit模塊#文件的復制移動
logging模塊#格式化記錄日誌
random模塊用於取隨機數
timedatetime模塊時間模塊
re模塊正則匹配
python目前三方提供的可用編程模塊函數庫組件規模有多大
C++,Java和Python是競爭性編程的三種最常見的語言。在本文中,我們將從競爭性編程和面試准備的角度重點介紹最重要的Python模塊。
?
list:動態大小的數組,允許在不關心數組大小的情況下進行插入和刪除。它還具有普通數組的優點,例如隨機訪問和緩存友好性。list也可以用作隊列和堆棧。
deque:Dequeue支持在O(1)時間內在兩端進行插入和刪除。由於它是使用數組實現的,因此它也允許隨機訪問。我們可以使用dequeue來實現隊列和堆棧。關於Deque的示例問題是,訪問所有的汽油泵和所有大小為k的子陣列的最大值。
請注意,Python中沒有用於隊列(Queue)和堆棧(Stack)的模塊。我們可以使用列表(list)或雙端隊列(deque)來實現這些。首選雙端隊列(deque)實現,尤其是對於隊列,因為在列表前面進行插入/刪除很慢。
在我們希望具有FIFO項目順序的情況下,隊列(Queue)很有用。問題示例包括:用給定的數字生成數字,流中的第一個非重復字元,樹及其變體的級序遍歷,圖的BFS及其變體。
set和dict:它們都實現了哈希。當我們有鍵的集合時,我們使用set。當我們有鍵值對時,我們使用字典(dictionary)。當我們希望快速搜索、插入和刪除時非常有用(這三個操作都是O(1))。這是業界使用最多的數據結構之一,也是學術界最低估的數據結構之一。常見的問題有:離散元素的計數、數組項的頻率、零和子陣、兩個未排序數組的並集、交集等。
heapq:默認情況下實現MinHeap。我們也可以創建最小堆。只要我們希望有效地找到最小或最大元素,就使用它。它用於實現流行的演算法,例如Prim演算法,Dijkstra最短路徑,霍夫曼編碼,K個最大元素,購買和合並K個排序數組的最大玩具,流的中位數。
sorted:對列表等序列進行排序。基於排序的示例問題包括:合並重疊間隔,所需的最小平台。第K個最小元素,求給定和的三元組。
bisect:用於二進制搜索。基於二進制搜索的示例問題有:查找第一次出現的索引、計數出現次數、峰值元素、兩個排序數組的中值。
注意:與C++STL和Java集合(Collections)不同。Python標准庫包含自平衡BST的實現。在Python中,我們可以使用bisect模塊來保留一組排序後的數據。我們還可以使用PyPi模塊,例如rbtree(紅黑樹的實現)和pyavl(AVL樹的實現)。
python中都有哪些模塊呢os模塊
os.getcwd()#獲取當前工作目錄,即當前python腳本工作的目錄路徑
os.chdir("dirname")#改變當前腳本工作目錄;相當於shell下cd
os.curdir#返回當前目錄:('.')
os.pardir#獲取當前目錄的父目錄字元串名:('..')
os.makedirs('dirname1/dirname2')#可生成多層遞歸目錄
os.removedirs('dirname1')#若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依此類推
os.mkdir('dirname')#生成單級目錄;相當於shell中mkdirdirname
os.rmdir('dirname')##刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當於shell中rmdirdirname
os.listdir('dirname')#列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表方式列印
os.remove()#刪除一個文件
os.rename("oldname","newname")#重命名文件/目錄
os.stat('path/filename')#獲取文件/目錄信息
os.sep#輸出操作系統特定的路徑分隔符,win下為"\",Linux下為"/"
os.linesep#輸出當前平台使用的行終止符,win下為" ",Linux下為" "
os.pathsep#輸出用於分割文件路徑的字元串win下為;,Linux下為:
os.name#輸出字元串指示當前使用平台。win-'nt'Linux-'posix'
os.system("bashcommand")#運行shell命令,直接顯示
os.environ#獲取系統環境變數
os.path.abspath(path)#返回path規范化的絕對路徑
os.path.split(path)#將path分割成目錄和文件名二元組返回
os.path.dirname(path)#返回path的目錄。其實就是os.path.split(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所指向的文件或者目錄的最後修改時間
os.path.getsize(path)#返回path的大小
sys模塊
sys.argv#命令行參數List,第一個元素是程序本身路徑
sys.exit(n)#退出程序,正常退出時exit(0)
sys.version#獲取Python解釋程序的版本信息
sys.maxint#最大的Int值
sys.path#返回模塊的搜索路徑,初始化時使用PYTHONPATH環境變數的值
sys.platform#返回操作系統平台名稱
datetime模塊
datetime.today()返回一個表示當前本期日期時間的datetime對象
datetime.now([tz])返回指定時區日期時間的datetime對象,如果不指定tz參數則結果同上
datetime.utcnow()返回當前utc日期時間的datetime對象
datetime.fromtimestamp(timestamp[,tz])根據指定的時間戳創建一個datetime對象
datetime.utcfromtimestamp(timestamp)根據指定的時間戳創建一個datetime對象
datetime.strptime(date_str,format)將時間字元串轉換為datetime對象
Python中的模塊importos
print(os.name)?#操作系統名稱?Windowsnt非Windowsposix
print(os.sep)?#路徑分隔符??Windows??其他/
importos
#使用os.path方法獲取文件的路徑
#001.獲取文件的絕對路徑使用abspath方法
print(os.path.abspath("04_模塊導入.py"))
#?運行結果:D:mypycharmpythonProject千峰培訓day11mole1 4_模塊導入.py
#002判斷是否是文件False
print(os.path.isdir(""))?
#運行結果:False
#003.判斷文件是否存在如果存在返回True否則返回False
print(os.path.exists("mydir"))
#True
importos
files="2020.12.22.test.py"
print(files.rpartition(".")[-1])?
print(os.path.splitext(files)[-1])
#運行結果:
#獲取文件的後綴名?py
#獲取文件的後綴名.py
importos
print(os.getcwd())
#運行結果:
#D:mypycharmpythonProject培訓day11mole1
importos
os.chdir("mydir")
print(os.getcwd())
#D:mypycharmpythonProject培訓day11mole1mydir
importos
os.rename("66.py","../99.py")
importos
#001.刪除文件
os.remove("../99.py")
#002.刪除空文件夾
os.rmdir("../mydir")
os.removedirs("mydir")
importos
os.mkdir("mydir")
importos
#001.列出指定目錄里所有的子目錄和文件
print(os.listdir("D:mypycharmpythonProject"))
#002.默認當前目錄里的子目錄和文件
print(os.listdir())
#運行結果:
#['.idea','千峰培訓','學校實習']
#[༿_mole.py',ཀ_模塊導入.py',ཁ_os.py',.12.22.tests.py','a01_mole1.py','a02_mole2.py','__pycache__']
importos
print(os.environ)
print(os.environ["PATH"])
importos
importstring?#字元串模塊
importrandom
files="test.jpg"
#?01.獲取文件的後綴
surffix=os.path.splitext(files)[-1]
#print(surffix)?#.jpg
#02.生成所有大小寫字母的列表
res=list(string.ascii_letters)
#print(string.ascii_letters)
#運行結果;
#?03.將0-9添加到res中
foriinrange(0,10):
??res.append(str(i))
#04.隨機生成文件名:
mystr="".join(random.sample(res,10))?#?sample隨機生成10個字元
#print(mystr)
#bJpED6dj2Y
#05.將文件名和後綴拼接
print(mystr+surffix)
importsys
print(sys.path)
res=sys.stdin
print(res)
importmath
#print(math.pi)?#3.141592653589793
print(math.factorial(5))?#120
#冪運算第一個參數是底數第二個參數是冪
print(math.pow(2,3))?#8.0
#向上取整和向下取整
print(math.floor(15.999))?#15
print(math.ceil(15.001))?#16
#四捨五入
print(round(123.51,1))?#123.5
#三角函數
print(math.sin(math.pi/6))?#sin(pi/6)0.49999999999999994
print(math.cos(math.pi/3))?#sin(pi/3)0.5000000000000001
print(math.tan(math.pi/4))?#sin(pi/6)0.9999999999999999
#開方
a=9
b=16
print(math.sqrt(a+b))?#5.0
#以e為底的指數函數
print(math.exp(a))
#?8103.083927575384
importrandom
#01.random()?隨機生成[0,1)之間的數?前閉後開
print(random.random())?#生成[0,1)之間的小數
#02.randint()生成范圍內的隨機整數????全閉
print(random.randint(10,20))?#生成[10,20]之間的整數
#03.randrange()生成范圍內的隨機整數???前閉後開
print(random.randrange(10,20))?#生成[10,20)之間的整數
#04.choice?參數是列表?隨機從列表中取一個?取一次
print(random.choice([1,2,3,4,5,6,77,8,9]))
#05.sample的第一個參數必須是一個可迭代對象
#?????第二個參數代表著從可迭代對象從隨機選取幾個,選取的對象不能重復
print("".join(random.sample(["a","b","c","d"],3)))
importdatetimeasdt#引入datetime模塊並將其命別名為dt
importtime
importcalendar?#引入日歷模塊
#01.datetime模塊
#001.獲取當前時間的具體信息
print(dt.datetime.now())?
#運行結果:
#2020-12-2615:36:36.408129
#年??月日?時分秒?毫秒
#002.創建日期
print(dt.date(2020,1,1))?
#年月日?2020-01-01
#003.創建時間
print(dt.time(16,30,30))
#時分秒:?16:30:30
#004.timedelta()括弧中的默認參數是天
print(dt.datetime.now()+dt.timedelta(3))?#2020-12-2515:50:15.811738
print(dt.datetime.now()+dt.timedelta(hours=3))?#2020-12-2218:51:41.723093
print(dt.datetime.now()+dt.timedelta(minutes=10))?#2020-12-2216:01:41.723093
#02.time
#001.當前時間的時間戳
#時間戳是指從1970—01-010:0:0到現在的秒數utc時間也叫格林尼治時間?
print(time.time())
#002.按照指定格式輸出時間
#print(time.strftime("%Y-%m-%d%H:%M:%S"))?#2020-12-2215:57:49
#時間格式:
#%Y?.
#%m?Monthasadecimalnumber[01,12].
#%d?Dayofthemonthasadecimalnumber[01,31].
#%H?Hour(24-hourclock)asadecimalnumber[00,23].
#%M?Minuteasadecimalnumber[00,59].
#%S?Secondasadecimalnumber[00,61].
#%z?TimezoneoffsetfromUTC.
#%a?Locale'sabbreviatedweekdayname.
#%A?Locale'sfullweekdayname.
#%b?Locale'sabbreviatedmonthname.
#%B?Locale'sfullmonthname.
#%c?Locale'.
#%I?Hour(12-hourclock)asadecimalnumber[01,12].
#%p?Locale'sequivalentofeitherAMorPM.
#003.ctime和asctime時間格式?輸出的時間格式一樣,
#print(time.asctime())?#TueDec2215:57:492020
#print(time.ctime())?#TueDec2215:58:352020
#004.sleep()?時間休眠
print("我負責浪")
print(time.sleep(3))
print("你負責漫")
#005.calender生成日歷
res=calendar.calendar(2021)?#生成2021年的日歷
print(res)
#006.判斷是否為閏年
print(calendar.isleap(2020))?#True
#007.從1988年到2020年有多少個閏年
print(calendar.leapdays(1988,2020))?#8
Python模塊的幾種類型簡介1、系統內置模塊
os模塊:os模塊包含普遍的操作系統功能
sys模塊:提供了一系列有關Python運行環境的變數和函數
random模塊:random模塊用於生成隨機數
time模塊:主要包含各種提供日期、時間功能的類和函數
datetime模塊:對time模塊的一個高級封裝
shutil模塊:是一種高層次的文件操作工具
logging模塊:將日誌列印到了標准輸出中
re模塊:可以直接調用來實現正則匹配
threading模塊:提供了更強大的多線程管理方案
queue模塊:實現了多生產者,多消費者的隊列
json模塊:用於字元串和數據類型間進行轉換json
2、開源(三方)模塊
Requests:最富盛名的http庫。每個Python程序員都應該有它。
Scrapy:從事爬蟲相關的工作,這個庫也是必不可少的。
NumPy:為Python提供了很多高級的數學方法。
matplotlib:一個繪制數據圖的庫。對於數據分析師非常有用。
Pygame:開發2D游戲的時候可以用上。
Scapy:用Python寫的數據包探測和分析庫。
Django:開源Web開發框架,它鼓勵快速開發,並遵循MVC設計,開發周期短。
Py2exe:將python腳本轉換為windows上可以獨立運行的可執行程序。
BeautifulSoup:基於Python的HTML/XML解析器,簡單易用。
PyGtk:基於Python的GUI程序開發GTK+庫。
3、自定義模塊
自定義模塊是
㈣ 每個Py程序的最開始都有 # /usr/bin/python , 這個到底是什麼, 有什麼作用
這是腳本語言共同遵守的規則:當第一行為 #!/path/to/script/interpreter時,指定了用來執行本腳本的解釋器。
注意:
1、必須是文件的第一行
2、必須以#!開頭,你丟了一個驚嘆號
3、/path/to/script/interpreter是腳本解釋器的全路徑名。
例如:
#!/bin/sh shell腳本
#!/usr/bin/perl perl腳本
#!/usr/bin/python python腳本
#!/usr/bin/python3 python3腳本
#!/usr/bin/python2 python2腳本
而有時不太清楚腳本解釋器的具體全路徑名;或者開發環境與運行環境的安裝路徑不同。為了保證兼容性,也可以寫作:
#!/usr/bin/env python3
這樣運行時會自動搜索腳本解釋器的絕對路徑。
㈤ 如何打開python的腳本文件
本文介紹如何在windows操作系統下默認使用python自帶的IDLE編輯器打開後綴名為.py的文件。
1、win+R打開運行
2、輸入regedit,確定
3、在打開的注冊表中找到以下目錄:
4、HKEY_CLASSES-ROOT->Python.file->shell->open->command
將該項的內容修改為:
"D:PythonPython3.6.1pythonw.exe" "D:PythonPython3.6.1Libidlelibidle.pyw" -e "%1"
5、(將其中的路徑修改為自己python的安裝路徑即可)
這樣就可以雙擊.py文件直接用IDLE打開了。
當然,也可以使用其他的編輯器,如pycharm,或者notepad++,原理是一樣的。
㈥ cmd中怎麼調用python腳本
在cmd中調用python腳本的方法:
1、直接使用「python python文件路徑」命令調用
2、在cmd中進入python文件所在路徑然後使用「python xx.py」命令即可。
更多Python知識請關注Python自學網。
㈦ os.getcwd為什麼總返回python的安裝目錄,而不是當前腳本工作目錄
os.getcwd()
Return a string representing the current working directory.
Availability: Unix, Windows.
os.getcwd返回的是當前的工作路徑,就是你在什麼地方執行的python命令,如果你想獲取腳本所在的目錄可以使用:
import os
print os.path.dirname(os.path.realpath(__file__))
如果解決了您的問題請採納!
如果未解決請繼續追問!
㈧ python腳本怎麼執行
Python腳本執行步驟:
1、首先在資源管理器里復制一下py文件存放的路徑,按下windows鍵+r,在運行里輸入cmd,回車打開命令行:
2、在命令行里,先切換到py文件的路徑下面,接著輸入「python 文件名.py 」運行python文件:
3、按下回車鍵,可以看到窗口中py文件開始運行了,注意在命令行運行py文件,要將python安裝路徑添加到環境變數path中,否則會報錯,找不到命令。至此python運行文件的操作就完成了。
Python