❶ 怎麼用cmd 運行python
用cmd運行python程序
步驟:(1)打開cmd。
❷ python 運行文件路徑問題
Desktop/LCI是相對路徑,前面會自動加上當前路徑
/Desktop/LCI才是絕對路徑,路徑與文件名要用/分隔,不要空格
python /Desktop/LCI/click.py
❸ Python氣象數據處理與繪圖(12):軌跡(台風路徑,寒潮路徑,水汽軌跡)繪制
寒潮是筆者主要的研究方向,寒潮路徑作為寒潮重要的特徵,是寒潮預報的重點之一,同樣的道理也適用在台風研究以及降水的水汽來源研究中。關於路徑的計算以及獲取方法(比如軌跡倒推,模型追蹤等等方法,台風有自己現成的數據集,比如ibtracs數據集等等)並不在本文的介紹范圍之內,本文主要介紹在獲取了相應的路徑坐標後,如何在圖中美觀的展現。
上圖展現了近40年東北亞區域的冬季冷空氣活動路徑,繪制這類圖需要的數據只需為每條路徑的N個三維坐標點,第一第二維分別為longitude和latitudee,第三維則比較隨意,根據需要選擇,比如說需要體現高度,那就用高度坐標,需要體現冷空氣強度,那就用溫度數據,水汽可以用相對濕度,台風也可以用速度等等。
通常此類數據是由.txt(.csv)等格式存儲的,讀取和處理方法可參考我的「Python氣象數據處理與繪圖(1):數據讀取」,本文主要介紹繪圖部分。
當然根據需要,也可以直接繪制兩維的軌跡,即取消掉顏色數組,用最簡單的plot語句,循環繪制即可。
有一個陷阱需要大家注意的是,當軌跡跨越了東西半球時,即穿越了0°或者360°經線時,它的連接方式是反向繞一圈,比如下圖所示,你想要藍色的軌跡,然而很有可能得到綠色的,這是因為你的網格數組的邊界是斷點,系統不會自動識別最短路徑,只會在數組中直接想連,因為這不是循環數組。
我目前的解決辦法是這樣的:如果你的數據是0°-360°格式,那麼變為-180°-180°的格式,反之相互轉換。但是如果你的數據兩種都出現了斷點,也就是繞了地球一圈多,那無論怎樣都么得辦法了,我目前的思路是將數據轉換成極坐標數據格式,理論上是可行的,CARTOPY的繪圖也是支持極坐標數據的,具體實施還需要再試試。
❹ python不能保存py文件格式
1、首先,在win10搜索框搜索到pythonidle,然後點擊運行IDLE。
❺ 如何在linux環境下添加python模塊路徑
本人python菜鳥一枚,在學習python過程中,經常要按照教程編寫一些模塊和函數練手,剛開始只是在python shell中編寫,但是如果出錯就會非常悲劇,又要從頭開始編,而且重啟python後也要重新編寫模塊。所以希望能像bash編程那樣將腳本路徑添加到環境變數中,這樣修改起來也方便。以下內容均來源於網路及本菜鳥。
摘要:本文敘述了如何在linux環境下添加python模塊的路徑,第1部分介紹了如何查看python環境變數,第2部分介紹了如何將腳本放入python自帶的環境變數目錄中,第3部分介紹了如何將目錄放入python的環境變數中重啟python失效,第4部分介紹了如何為python添加永久環境變數目錄。這些方法可以使模塊的修改和重復使用更加方便,不用重復輸入。
1、首先,可以用python中的內建模塊sys來查看python的環境變數。
這些目錄都是python的環境變數。
2.接下來本菜鳥嘗試一下如果將提前寫好的python腳本放入這些目錄中,能不能在python中使用。別問為什麼跑題,本菜就想試一試^ -^。
選擇/usr/local/lib/python2.7/dist-packages/pip-7.1.2-py2.7.egg這個目錄,腳本名為my_mole.py,裡面只有一個名為c_to_f的函數,用來計算從攝氏溫度轉換為華氏溫度。
可以看到,腳本已經位於剛開始選定的的目錄下了。
我們現在來看看,在python中導入這個模塊。並按照「模塊.函數」的格式使用函數。
可以看到,導入模塊成功,其中的c_to_f函數也正確使用,10攝氏度=50華氏度。或者你在確定函數名不重名的前提下,可以from my_mole import c_to_f,這樣就可以直接使用函數c_to_f,而不需要模塊名作為前綴。
實驗成功,將腳本導入python自帶的環境變數目錄中是有效的,如果之前運行了python,再導入後並不用重啟python就可以導入模塊。
3.接下來我們回歸正題,如何自定義python環境變數目錄。最直接的想法是把目錄加到剛才的python環境變數中。可以使用sys.path.append('/.../....')。
然後再次查看path路徑,發現"/home/sh/python"目錄確實加入了。並且也可以使用。但是這種方法一旦退出python,剛才新加的目錄就消失了。
4.接下來介紹一種一勞永逸的方法,就是直接修改系統變數。
export PYTHONPATH=$PYTHONPATH:/..../..../,對,沒錯,直接在shell中敲這一行,目錄是你自定義的目錄,然後打開python,import my_mole,你就愉快的可以使用自定義的模塊了。
http://blog.sina.com.cn/s/blog_959cf80d0102vx3j.html
❻ python--目錄操作
一、os.getcwd()
獲取當前工作目錄,即當前Python腳本工作的目錄路徑。
二、os. chdir(path)
改變當前腳本工作目錄;相當於shell下的cd命令。
三、os.pardir
返回當前目錄的父目錄('..')
四、獲取當前使用的操作系統類型(其中 『nt』 是 windows,』posix』 是linux 或者 unix)。
五、os.mkdir(path [, mode=0777])
生成單級目錄;相當於linux中的mkdir dirname。參數mode表示生成的目錄的許可權,默認是超級許可權,也就是0777。如果重復創建,會報錯
六、os.makedirs(path [, mode=0777])
可生成多層遞歸目錄,父目錄如果不存在,遞歸生成。參數mode表示生成的目錄的許可權,默認是超級許可權,也就是0777。
七、os.removedirs(path)
若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依次類推。
八、os.rmdir(path)
刪除單級空目錄,若目錄不為空則無法刪除,會報錯;相當Linux中的rmdir dirname。
九、os.listdir(path)
列出指定目錄下的所有文件和子目錄,包括隱藏文件或目錄,並以列表形式返回。
十、os.remove(filePath)
刪除一個指定的文件,參數filePath表示文件所在的路徑。
注意:該方法只能刪除文件,不能刪除目錄。
十一、os.rename(oldname, newname)
重命名文件/目錄。
十二、os.access(path, mode)
輸出文件許可權模式。
十三、os.chmod(path, mode)
修改文件的許可權。
十四、os.walk(top, topdown=True, onerror=None, followlinks=False)
➢top:表示需要遍歷的目錄樹的路徑。
➢topdown的默認值是「True」,表示首先返回目錄樹下的文件,然後遍歷目錄樹下的子目錄。值設為False時,則表示先遍歷目錄樹下的子目錄,返回子目錄下的文件,最後返回根目錄下的文件。
➢onerror的默認值是「None」,表示忽略文件遍歷時產生的錯誤。如果不為空,則提供一個自定義函數提示錯誤信息後繼續遍歷或拋出異常中止遍歷。
➢該函數返回一個列表,列表中的每一個元素都是一個元組,該元組有3個元素,分別表示每次遍歷的路徑名,目錄列表和文件列表。
➢默認情況下,os.walk 不會遍歷軟鏈接指向的子目錄,若有需要請將followlinks設定為true
十五、os.path.split(path)
將path分割成目錄和文件名(事實上,如果你完全使用目錄,它也會將最後一個目錄作為文件名而分離,同時它不會判斷文件或目錄是否存在),並存於元組中返回。
十六、os.path.exists(path)
判斷path是否存在,如果存在返回True,否則返回False。
十七、os.path.isfile(path)
判斷path是否是文件,如果是返回True,否則返回False。
十八、os.path.isdir(path)
判斷path是否是目錄,如果是目錄返回True,否則返回False。
十九、os.path.getsize(name)
獲得文件大小,如果name是目錄返回結果是0L或者4096L;如果name代表的目錄或文件不存在,則會報WindowsError異常。
二十、os.path.join(a, *p)
連接兩個或更多的路徑名,中間以「\」分隔,如果所給的參數中都是絕對路徑名,那先給的絕對路徑將會被丟棄。
二十一、os.path.getatime(filename)
返迴文件的最後訪問時間,返回的是時間戳。
二十二、os.path.getctime(filename)
以時間戳的形式返迴文件或目錄的創建時間,在Unix系統上是文件最近更改的時間,在Windows上是文件或目錄的創建時間。
1.基礎題:
檢驗給出的路徑是否是一個文件:os.path.isfile("D:\\test.txt")
檢驗給出的路徑是否是一個目錄:os.path.isdir("D:\\test.txt")
判斷是否是絕對路徑:os.path.isabs("D:\\test.txt")
檢驗給出的路徑是否真地存在:
2.返回一個路徑的目錄名和文件名 :os.listdir("D:\\")
3.分離文件名與擴展名 :os.path.splitext("D:\\test.txt")
4.找出某個目錄下所有的文件,並在每個文件中寫入「gloryroad」 :
>>> for files in os.walk("D:\\test"):
... print(files)
...
('D:\\test', [], ['a.txt', 'b.txt', 'test.txt', 'test1.txt'])
>>> with open("D:\\test\\a.txt","w+") as f:
... f.write("gloryroad")
5.如果某個目錄下文件名包含txt後綴名,則把文件後面追加寫一行「被我找到了!」
6. 命題練習:
1) 一個目錄下只有文件(自己構造),拷貝幾個文件(手工完成)
2 )用listdir函數獲取所有文件,如果文件的創建時間是今天,那麼就在文件裡面寫上文件的路徑、文件名和文件擴展名
3) 如果不是今天創建(獲取文件的創建時間,並轉化為時間格式,判斷是否今天),請刪除
4 )計算一下這個程序的執行耗時
7.刪除某個目錄下的全部文件
8.統計某個目錄下文件數和目錄個數
9.使用程序建立一個多級的目錄,在每個目錄下,新建一個和目錄名字一樣的txt文件
10. 查找某個目錄下是否存在某個文件名
11. 用系統命令拷貝文件
12.輸入源文件所在路徑和目標目錄路徑,然後實現文件拷貝功能
13.遍歷某個目錄下的所有圖片,並在圖片名稱後面增加
14、遍歷指定目錄下的所有文件,找出其中佔用空間最大的前3個文件
15、過濾py源碼中的#注釋,另存為文件result.py,並執行result.py,斷言是否執行成功
16、文件訪問,提示輸入數字 N 和文件 F, 然後顯示文件 F 的前 N 行.
17、從命令行接受1個路徑如:c:\a\b\c\1.py, 實現1個函數創建目錄a\b\c,創建文件1.py,實現1個函數刪除已創建的目錄及文件
18、有一個ip.txt,裡面每行是一個ip,實現一個函數,ping 每個ip的結果,把結果記錄存到ping.txt中,格式為ip:0或ip:1 ,0代表ping成功,1代表ping失敗
19、實現DOS命令執行功能,接受輸入命令並執行,然後把執行結果和返回碼列印到屏幕
20、文件訪問
訪問一存在多行的文件,實現每隔一秒逐行顯示文本內容的程序,每次顯示文本文件的 5行, 暫停並向用戶提示「輸入任意字元繼續」,按回車鍵後繼續執行,直到文件末尾。
顯示文件的格式為:[當前時間] 一行內容,比如:[2016-07-08 22:21:51] 999370this is test
❼ Python3基礎
默認情況下,Python 3 源碼文件以 UTF-8 編碼,所有字元串都是 unicode 字元串。 當然你也可以為源碼文件指定不同的編碼:
在 Python 3 中,非 ASCII 標識符也是允許的了。
保留字即關鍵字,我們不能把它們用作任何標識符名稱。Python 的標准庫提供了一個 keyword 模塊,可以輸出當前版本的所有關鍵字:
Python中單行注釋以 # 開頭,實例如下:
執行以上代碼,輸出結果為:
多行注釋可以用多個 # 號,還有 ''' 和 """:
執行以上代碼,輸出結果為:
python最具特色的就是使用縮進來表示代碼塊,不需要使用大括弧 {} 。
縮進的空格數是可變的,但是同一個代碼塊的語句必須包含相同的縮進空格數。實例如下:
以下代碼最後一行語句縮進數的空格數不一致,會導致運行錯誤:
以上程序由於縮進不一致,執行後會出現類似以下錯誤:
Python 通常是一行寫完一條語句,但如果語句很長,我們可以使用反斜杠()來實現多行語句,例如:
在 [], {}, 或 () 中的多行語句,不需要使用反斜杠(),例如:
python中數字有四種類型:整數、布爾型、浮點數和復數。
實例
輸出結果為:
函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。
空行與代碼縮進不同,空行並不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。
記住: 空行也是程序代碼的一部分。
執行下面的程序在按回車鍵後就會等待用戶輸入:
以上代碼中 ," "在結果輸出前會輸出兩個新的空行。一旦用戶按下 enter 鍵時,程序將退出。
Python可以在同一行中使用多條語句,語句之間使用分號(;)分割,以下是一個簡單的實例:
執行以上代碼,輸出結果為:
縮進相同的一組語句構成一個代碼塊,我們稱之代碼組。
像if、while、def和class這樣的復合語句,首行以關鍵字開始,以冒號( : )結束,該行之後的一行或多行代碼構成代碼組。
我們將首行及後面的代碼組稱為一個子句(clause)。
如下實例:
print 默認輸出是換行的,如果要實現不換行需要在變數末尾加上 end="" :
以上實例執行結果為:
在 python 用 import 或者 from...import 來導入相應的模塊。
將整個模塊(somemole)導入,格式為: import somemole
從某個模塊中導入某個函數,格式為: from somemole import somefunction
從某個模塊中導入多個函數,格式為: from somemole import firstfunc, secondfunc, thirdfunc
將某個模塊中的全部函數導入,格式為: from somemole import *
import sys print ( ' ================Python import mode========================== ' ) ; print ( ' 命令行參數為: ' ) for i in sys . argv : print ( i ) print ( ' python 路徑為 ' , sys . path )
from sys import argv , path # 導入特定的成員 print ( ' ================python from import=================================== ' ) print ( ' path: ' , path ) # 因為已經導入path成員,所以此處引用時不需要加sys.path
很多程序可以執行一些操作來查看一些基本信息,Python可以使用-h參數查看各參數幫助信息: