1、print()函數(shù):打印字符串;
為高邑等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及高邑網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、高邑網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
2、raw_input()函數(shù):從用戶鍵盤捕獲字符;
3、len()函數(shù):計(jì)算字符長(zhǎng)度;
4、format()函數(shù):實(shí)現(xiàn)格式化輸出;
5、type()函數(shù):查詢對(duì)象的類型;
6、int()函數(shù)、float()函數(shù)、str()函數(shù)等:類型的轉(zhuǎn)化函數(shù);
7、id()函數(shù):獲取對(duì)象的內(nèi)存地址;
8、help()函數(shù):Python的幫助函數(shù);
9、s.islower()函數(shù):判斷字符小寫;
10、s.sppace()函數(shù):判斷是否為空格;
11、str.replace()函數(shù):替換字符;
12、import()函數(shù):引進(jìn)庫;
13、math.sin()函數(shù):sin()函數(shù);
14、math.pow()函數(shù):計(jì)算次方函數(shù);
15、os.getcwd()函數(shù):獲取當(dāng)前工作目錄;
16、listdir()函數(shù):顯示當(dāng)前目錄下的文件;
17、time.sleep()函數(shù):停止一段時(shí)間;
18、random.randint()函數(shù):產(chǎn)生隨機(jī)數(shù);
19、range()函數(shù):返回一個(gè)列表,打印從1到100;
20、file.read()函數(shù):讀取文件返回字符串;
21、file.readlines()函數(shù):讀取文件返回列表;
22、file.readline()函數(shù):讀取一行文件并返回字符串;
23、split()函數(shù):用什么來間隔字符串;
24、isalnum()函數(shù):判斷是否為有效數(shù)字或字符;
25、isalpha()函數(shù):判斷是否全為字符;
26、isdigit()函數(shù):判斷是否全為數(shù)字;
27、 lower()函數(shù):將數(shù)據(jù)改成小寫;
28、upper()函數(shù):將數(shù)據(jù)改成大寫;
29、startswith(s)函數(shù):判斷字符串是否以s開始的;
30、endwith(s)函數(shù):判斷字符串是否以s結(jié)尾的;
31、file.write()函數(shù):寫入函數(shù);
32、file.writeline()函數(shù):寫入文件;
33、abs()函數(shù):得到某數(shù)的絕對(duì)值;
34、file.sort()函數(shù):對(duì)書數(shù)據(jù)排序;
35、tuple()函數(shù):創(chuàng)建一個(gè)元組;
36、find()函數(shù):查找 返回的是索引;
37、dict()函數(shù):創(chuàng)建字典;
38、clear()函數(shù):清楚字典中的所有項(xiàng);
39、copy()函數(shù):復(fù)制一個(gè)字典,會(huì)修改所有的字典;
40、 get()函數(shù):查詢字典中的元素。
…………
print-輸出,input-輸入,int-將字符串轉(zhuǎn)數(shù)字(字符串必須是數(shù)字),str-將數(shù)字轉(zhuǎn)為字符串,list-將字符串/數(shù)字轉(zhuǎn)為列表,for-有限循環(huán),while-無限循環(huán)……………………………………
使用鍵盤輸入值并不是編輯表中值的唯一方式。在某些情況下,為了設(shè)置字段值,可能要對(duì)單條記錄甚至是所有記錄執(zhí)行數(shù)學(xué)計(jì)算。您可以對(duì)所有記錄或選中記錄執(zhí)行簡(jiǎn)單計(jì)算和高級(jí)計(jì)算。此外,還可以在屬性表中的字段上計(jì)算面積、長(zhǎng)度、周長(zhǎng)和其他幾何屬性。以下各部分包括使用字段計(jì)算器的若干示例。使用 Python、SQL 和 Arcade 執(zhí)行計(jì)算。
本主題著重于基于 Python 的計(jì)算字段示例。要了解有關(guān) Arcade 表達(dá)式的詳細(xì)信息,請(qǐng)參閱 ArcGIS Arcade 指南。要了解有關(guān) SQL 表達(dá)式的詳細(xì)信息,請(qǐng)參閱計(jì)算字段。
注:
Python 強(qiáng)制將縮進(jìn)作為語法的一部分。請(qǐng)使用兩個(gè)或四個(gè)空格來定義每個(gè)邏輯級(jí)別。將語句塊的開頭和結(jié)尾對(duì)齊并且保持一致。
Python 計(jì)算表達(dá)式字段將使用驚嘆號(hào) (!!) 括起。
命名變量時(shí),請(qǐng)注意 Python 區(qū)分大小寫,因此 value 不同于 Value。
輸入語句后,如果想將其寫入文件,請(qǐng)單擊導(dǎo)出。導(dǎo)入按鈕將提示您查找和選擇一個(gè)現(xiàn)有的計(jì)算文件。
簡(jiǎn)單計(jì)算
僅通過一個(gè)短表達(dá)式就可以計(jì)算出多種計(jì)算結(jié)果。
簡(jiǎn)單字符串示例
一系列 Python 字符串函數(shù)均支持使用字符串,包括 capitalize、rstrip 和 replace。
將 CITY_NAME 字段中字符串的首字母大寫。
!CITY_NAME!.capitalize()
去掉 CITY_NAME 字段中自字符串結(jié)尾起的所有空白區(qū)。
!CITY_NAME!.rstrip()
將 STATE_NAME 字段中的“california”全部替換為“California”。
!STATE_NAME!.replace("california", "California")
在 Python 中,字符串字段中的字符可以通過索引和分割操作進(jìn)行訪問。索引操作將在索引位置提取字符,而分割操作則會(huì)提取一組字符。在下表中,假設(shè) !fieldname! 是值為 "abcde" 的字符串字段。
示例
說明
結(jié)果
!fieldname![0]
第一個(gè)字符
"a"
!fieldname![-2]
倒數(shù)第二個(gè)字符
"d"
!fieldname![1:4]
第二、三和四個(gè)字符
"bcd"
Python 也支持使用 format() 方法的字符串格式。
將合并后的 FieldA 和 FieldB 以冒號(hào)分隔開。
"{}:{}".format(!FieldA!, !FieldB!)
常見 Python 字符串操作
簡(jiǎn)單數(shù)學(xué)示例
Python 提供了處理數(shù)字的工具。Python 也支持一些數(shù)值和數(shù)學(xué)函數(shù),包括 math、cmath、decimal、random、itertools、functools 和 operator。
運(yùn)算符
說明
示例
結(jié)果
x + y
x 加上 y
1.5 + 2.5
4.0
x - y
x 減去 y
3.3 - 2.2
1.1
x * y
x 乘以 y
2.0 * 2.2
4.4
x / y
x 除以 y
4.0 / 1.25
3.2
x // y
x 除以 y(向下取整除法)
4.0 // 1.25
3.0
x % y
x 模 y
8 % 3
2
-x
x 的負(fù)數(shù)表達(dá)式
x = 5
-x
-5
+x
x 不變
x = 5
+x
5
x ** y
以 x 為底,以 y 為指數(shù)的冪
2 ** 3
8
乘
!Rank! * 2
根據(jù)給定的半徑字段計(jì)算球體的體積。
4.0 / 3.0 * math.pi * !Radius! ** 3
舊版本:
在 ArcGIS Pro 中,使用的是 Python 3,在 ArcGIS Desktop 中,使用的 Python 2。Python 2 使用的是整型數(shù)學(xué)計(jì)算,這就意味著兩個(gè)整型值相除將始終生成整型值 (3 / 2 = 1)。在 Python 3 中,兩個(gè)整型值相除將生成浮點(diǎn)型值 (3 / 2 = 1.5)。
Python 內(nèi)置函數(shù)
Python 包含多個(gè)可用的內(nèi)置函數(shù),包括 max、min、round 和 sum。
Python 內(nèi)置函數(shù)
通過字段列表計(jì)算每條記錄的最大值。
max([!field1!, !field2!, !field3!])
通過字段列表計(jì)算每條記錄的總和。
sum([!field1!, !field2!, !field3!])?使用代碼塊
通過 Python 表達(dá)式和代碼塊參數(shù)可執(zhí)行以下操作:
在表達(dá)式中應(yīng)用任意 Python 函數(shù)。
訪問地理處理函數(shù)和對(duì)象。
訪問要素幾何的屬性。
訪問新的隨機(jī)值運(yùn)算符。
使用 if-then-else 邏輯對(duì)值進(jìn)行重分類。
表達(dá)式類型
代碼塊
Python 3
支持 Python 功能。使用 Python 函數(shù) (def) 表示代碼塊。在適當(dāng)?shù)那闆r下,幾何屬性將通過地理處理對(duì)象表示(如點(diǎn)對(duì)象)。
Arcade
支持 Arcade 功能。
SQL
支持 SQL 表達(dá)式。
執(zhí)行 SQL 表達(dá)式可以更好地支持使用要素服務(wù)和企業(yè)級(jí)地理數(shù)據(jù)庫的計(jì)算,尤其是在性能方面。使用該表達(dá)式可以將單次請(qǐng)求設(shè)置為要素服務(wù)或數(shù)據(jù)庫,而不必一次執(zhí)行一個(gè)要素或一行的計(jì)算。
舊版本:
在 ArcGIS Desktop 中,計(jì)算字段工具支持 VB、PYTHON 和 PYTHON_9.3 表達(dá)式類型。VB 表達(dá)式類型,在某些產(chǎn)品中受支持,但在 64 位產(chǎn)品中不受支持,其中包括 ArcGIS Pro。
出于相后兼容性考量,ArcGIS Pro 中仍然支持 PYTHON 和 PYTHON_9.3 關(guān)鍵字,但是不會(huì)作為選擇列出。使用這些關(guān)鍵字的 Python 腳本將可繼續(xù)使用。
Python 3 表達(dá)式類型與舊版 PYTHON_9.3 關(guān)鍵字的唯一區(qū)別在于 Python 3 會(huì)將日期字段中的值作為 Python datetime 對(duì)象返回。
注:
Python 3 表達(dá)式類型與隨 ArcGIS Pro 安裝的 Python 版本無關(guān)。這只是歷史上的第三個(gè) Python 相關(guān)關(guān)鍵字(繼 PYTHON 和 PYTHON_9.3 之后。
各 Python 函數(shù)可通過 def 關(guān)鍵字定義,關(guān)鍵字后為函數(shù)名稱及函數(shù)的輸入?yún)?shù)。可編寫 Python 函數(shù),使 Python 函數(shù)能夠接受任何數(shù)量的輸入?yún)?shù)(也可以沒有任何參數(shù))。函數(shù)將通過 return 語句返回值。函數(shù)名稱可由您自行選取(不得使用空格,也不得以數(shù)字開頭)。
注:
如果函數(shù)未通過 return 語句顯式返回值,則函數(shù)將返回 None。
注:
請(qǐng)牢記,Python 強(qiáng)制要求將縮進(jìn)作為語法的一部分。請(qǐng)使用四個(gè)空格來定義每個(gè)邏輯級(jí)別。將語句塊的開頭和結(jié)尾對(duì)齊并且保持一致。
代碼示例 - 數(shù)學(xué)
在使用以下數(shù)學(xué)示例時(shí),請(qǐng)假設(shè)表達(dá)式類型為 Python 3。
將字段的值四舍五入為保留兩位小數(shù)。
表達(dá)式:
round(!area!, 2)
通過 math 模塊將米轉(zhuǎn)換成英尺。以轉(zhuǎn)換值為底,以 2 為指數(shù)進(jìn)行冪運(yùn)算,然后再乘以 area。
表達(dá)式:
MetersToFeet((float(!shape.area!)))
代碼塊:
import math
def MetersToFeet(area):
return math.pow(3.2808, 2) * area?通過 Python 邏輯計(jì)算字段
可以使用 if、else 和 elif 語句將邏輯模式包含在代碼塊中。
按照字段值進(jìn)行分類。
表達(dá)式:
Reclass(!WELL_YIELD!)
代碼塊:
def Reclass(WellYield):
if (WellYield = 0 and WellYield = 10):
return 1
elif (WellYield 10 and WellYield = 20):
return 2
elif (WellYield 20 and WellYield = 30):
return 3
elif (WellYield 30):
return 4?代碼實(shí)例 - 幾何
除以下代碼示例外,請(qǐng)參閱下方的“幾何單位轉(zhuǎn)換”部分,以了解有關(guān)轉(zhuǎn)換幾何單位的詳細(xì)信息。
計(jì)算某要素的面積。
表達(dá)式:
!shape.area!
計(jì)算某要素的最大 x 坐標(biāo)。
表達(dá)式:
!shape.extent.XMax!
計(jì)算某要素中的折點(diǎn)數(shù)。
表達(dá)式:
MySub(!shape!)
代碼塊:
def MySub(feat):
partnum = 0
# Count the number of points in the current multipart feature
partcount = feat.partCount
pntcount = 0
# Enter while loop for each part in the feature (if a singlepart
# feature, this will occur only once)
while partnum partcount:
part = feat.getPart(partnum)
pnt = part.next()
# Enter while loop for each vertex
while pnt:
pntcount += 1
pnt = part.next()
# If pnt is null, either the part is finished or there
# is an interior ring
if not pnt:
pnt = part.next()
partnum += 1
return pntcount
將點(diǎn)要素類中每個(gè)點(diǎn)的 x 坐標(biāo)平移 100。
表達(dá)式:
shiftXCoordinate(!SHAPE!)
代碼塊:
def shiftXCoordinate(shape):
shiftValue = 100
point = shape.getPart(0)
point.X += shiftValue
return point?幾何單位轉(zhuǎn)換
幾何字段的面積和長(zhǎng)度屬性可通過用 @ 符號(hào)表示的單位類型進(jìn)行修改。
面積測(cè)量單位關(guān)鍵字:
ACRES | ARES | HECTARES | SQUARECENTIMETERS | SQUAREDECIMETERS | SQUAREINCHES | SQUAREFEET | SQUAREKILOMETERS | SQUAREMETERS | SQUAREMILES | SQUAREMILLIMETERS | SQUAREYARDS | SQUAREMAPUNITS | UNKNOWN
線性測(cè)量單位關(guān)鍵字:
CENTIMETERS | DECIMALDEGREES | DECIMETERS | FEET | INCHES | KILOMETERS | METERS | MILES | MILLIMETERS | NAUTICALMILES | POINTS | UNKNOWN | YARDS
注:
如果數(shù)據(jù)存儲(chǔ)在地理坐標(biāo)系中且具有線性單位(例如英尺),則會(huì)通過測(cè)地線算法轉(zhuǎn)換長(zhǎng)度計(jì)算的結(jié)果。
警告:
轉(zhuǎn)換地理坐標(biāo)系中數(shù)據(jù)的面積單位會(huì)生成不正確的結(jié)果,這是由于沿 globe 的十進(jìn)制度并不一致。
計(jì)算某要素的長(zhǎng)度(以碼為單位)。
表達(dá)式:
!shape.length@yards!
計(jì)算某要素的面積(以英畝為單位)。
表達(dá)式:
!shape.area@acres!
測(cè)地線面積和長(zhǎng)度也可以通過帶 @(后跟測(cè)量單位關(guān)鍵字)的 geodesicArea 和 geodesicLength 屬性進(jìn)行計(jì)算。
計(jì)算某要素的測(cè)地線長(zhǎng)度(以碼為單位)。
表達(dá)式:
!shape.geodesicLength@yards!
計(jì)算某要素的測(cè)地線面積(以英畝為單位)。
表達(dá)式:
!shape.geodesicArea@acres!?代碼實(shí)例 - 日期
日期和時(shí)間可使用 datetime 和 time 模塊進(jìn)行計(jì)算。
計(jì)算當(dāng)前日期。
表達(dá)式:
time.strftime("%d/%m/%Y")
計(jì)算當(dāng)前日期和時(shí)間。
表達(dá)式:
datetime.datetime.now()
計(jì)算的日期為 2000 年 12 月 31 日。
表達(dá)式:
datetime.datetime(2000, 12, 31)
計(jì)算當(dāng)前日期和字段中的值之間的天數(shù)。
表達(dá)式:
(datetime.datetime.now() - !field1!).days
通過向字段中的日期值添加 100 天來計(jì)算日期。
表達(dá)式:
!field1! + datetime.timedelta(days=100)
計(jì)算字段中的日期值為一周中的周幾(例如,星期天)。
表達(dá)式:
!field1!.strftime('%A')?代碼實(shí)例 - 字符串
可以使用多種 Python 編碼模式來完成字符串計(jì)算。
返回最右側(cè)三個(gè)字符。
表達(dá)式:
!SUB_REGION![-3:]
將所有大寫字母 P 替換為小寫字母 p。
表達(dá)式:
!STATE_NAME!.replace("P","p")
通過空格分隔符串連兩個(gè)字段。
表達(dá)式:
!SUB_REGION! + " " + !STATE_ABBR!?轉(zhuǎn)換為正確的大小寫形式
下列各例顯示的是轉(zhuǎn)換單詞的不同方法,這些方法可使每個(gè)單詞的首字母變?yōu)榇髮?、其余字母變?yōu)樾憽?/p>
表達(dá)式:
' '.join([i.capitalize() for i in !STATE_NAME!.split(' ')])?表達(dá)式:
!STATE_NAME!.title()?正則表達(dá)式
Python 的 re 模塊提供了正則表達(dá)式匹配操作,可用于對(duì)字符串執(zhí)行復(fù)雜的模式匹配和替換規(guī)則。
re - 正則表達(dá)式運(yùn)算正則表達(dá)式的用法
使用單詞 Street 替換 St 或 St.,在字符串的末尾生成一個(gè)新單詞。
表達(dá)式:
update_street(!ADDRESS!)
代碼塊:
import re
def update_street(street_name):
return re.sub(r"""\b(St|St.)\Z""",
'Street',
street_name)?累加計(jì)算和順序計(jì)算
可以使用全局變量來進(jìn)行累加計(jì)算和順序計(jì)算。
根據(jù)某間隔值計(jì)算順序 ID 或數(shù)字。
表達(dá)式:
autoIncrement()
代碼塊:
rec=0
def autoIncrement():
global rec
pStart = 1 # adjust start value, if req'd
pInterval = 1 # adjust interval value, if req'd
if (rec == 0):
rec = pStart
else:
rec = rec + pInterval
return rec
計(jì)算數(shù)值型字段的累加值。
表達(dá)式:
accumulate(!FieldA!)
代碼塊:
total = 0
def accumulate(increment):
global total
if total:
total += increment
else:
total = increment
return total
計(jì)算數(shù)值型字段的百分比增量。
表達(dá)式:
percentIncrease(float(!FieldA!))
代碼塊:
lastValue = 0
def percentIncrease(newValue):
global lastValue
if lastValue:
percentage = ((newValue - lastValue) / lastValue) * 100
else:
percentage = 0
lastValue = newValue
return percentage?隨機(jī)值
可以使用 random 模塊來計(jì)算隨機(jī)值。
通過 numpy 站點(diǎn)包來計(jì)算 0.0 和 1.0 之間的隨機(jī)浮點(diǎn)值。
表達(dá)式:
getRandomValue()
代碼塊:
import numpy
def getRandomValue():
return numpy.random.random()
使用隨機(jī)模塊來計(jì)算 0 與 10 之間的隨機(jī)整數(shù)。
表達(dá)式:
random.randint(0, 10)
代碼塊:
import random?計(jì)算空值
在 Python 表達(dá)式中,可通過 Python None 來計(jì)算空值。
注:
僅當(dāng)該字段為空時(shí),才可以進(jìn)行以下計(jì)算。
使用 Python None 計(jì)算空值。
表達(dá)式:
None?相關(guān)主題
有關(guān)字段計(jì)算的基礎(chǔ)知識(shí)
授權(quán)轉(zhuǎn)載:gisoracle
網(wǎng)課學(xué)習(xí) + 權(quán)威結(jié)業(yè)證書
我們精心匯總了一些相對(duì)簡(jiǎn)單
培訓(xùn)考核通過便可獲取的證書
自然資源部職鑒中心發(fā)證
可用于招投標(biāo)、資質(zhì)系統(tǒng)
等
測(cè)繪師繼續(xù)教育20學(xué)時(shí)
中國測(cè)繪網(wǎng)新媒體中心
cehui8@qq.com
商務(wù)合作/微信 214979525
Python 函數(shù)
函數(shù)是組織好的,可重復(fù)使用的,用來實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。
函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。你已經(jīng)知道Python提供了許多內(nèi)建函數(shù),比如print()。但你也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。
定義一個(gè)函數(shù)
你可以定義一個(gè)由自己想要功能的函數(shù),以下是簡(jiǎn)單的規(guī)則:
函數(shù)代碼塊以?def?關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。
任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)。
函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。
函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。
return [表達(dá)式]?結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None。
語法
def functionname( parameters ): ? "函數(shù)_文檔字符串"
function_suite
return [expression]
默認(rèn)情況下,參數(shù)值和參數(shù)名稱是按函數(shù)聲明中定義的順序匹配起來的。
實(shí)例
以下為一個(gè)簡(jiǎn)單的Python函數(shù),它將一個(gè)字符串作為傳入?yún)?shù),再打印到標(biāo)準(zhǔn)顯示設(shè)備上。
實(shí)例(Python 2.0+)
def printme( str ): ? "打印傳入的字符串到標(biāo)準(zhǔn)顯示設(shè)備上"
print str
return
函數(shù)調(diào)用
定義一個(gè)函數(shù)只給了函數(shù)一個(gè)名稱,指定了函數(shù)里包含的參數(shù),和代碼塊結(jié)構(gòu)。
這個(gè)函數(shù)的基本結(jié)構(gòu)完成以后,你可以通過另一個(gè)函數(shù)調(diào)用執(zhí)行,也可以直接從Python提示符執(zhí)行。
如下實(shí)例調(diào)用了printme()函數(shù):
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
# 定義函數(shù)def printme( str ): ? "打印任何傳入的字符串"
print str
return
# 調(diào)用函數(shù)printme("我要調(diào)用用戶自定義函數(shù)!")printme("再次調(diào)用同一函數(shù)")
以上實(shí)例輸出結(jié)果:
我要調(diào)用用戶自定義函數(shù)!再次調(diào)用同一函數(shù)
參數(shù)傳遞
在 python 中,類型屬于對(duì)象,變量是沒有類型的:
a=[1,2,3]
a="Runoob"
以上代碼中,[1,2,3]?是 List 類型,"Runoob"?是 String 類型,而變量 a 是沒有類型,她僅僅是一個(gè)對(duì)象的引用(一個(gè)指針),可以是 List 類型對(duì)象,也可以指向 String 類型對(duì)象。
可更改(mutable)與不可更改(immutable)對(duì)象
在 python 中,strings, tuples, 和 numbers 是不可更改的對(duì)象,而 list,dict 等則是可以修改的對(duì)象。
不可變類型:變量賦值?a=5?后再賦值?a=10,這里實(shí)際是新生成一個(gè) int 值對(duì)象 10,再讓 a 指向它,而 5 被丟棄,不是改變a的值,相當(dāng)于新生成了a。
可變類型:變量賦值?la=[1,2,3,4]?后再賦值?la[2]=5?則是將 list la 的第三個(gè)元素值更改,本身la沒有動(dòng),只是其內(nèi)部的一部分值被修改了。
python 函數(shù)的參數(shù)傳遞:
不可變類型:類似 c++ 的值傳遞,如 整數(shù)、字符串、元組。如fun(a),傳遞的只是a的值,沒有影響a對(duì)象本身。比如在 fun(a)內(nèi)部修改 a 的值,只是修改另一個(gè)復(fù)制的對(duì)象,不會(huì)影響 a 本身。
可變類型:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改后fun外部的la也會(huì)受影響
python 中一切都是對(duì)象,嚴(yán)格意義我們不能說值傳遞還是引用傳遞,我們應(yīng)該說傳不可變對(duì)象和傳可變對(duì)象。
python 傳不可變對(duì)象實(shí)例
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
def ChangeInt( a ): ? ?a = 10
b = 2ChangeInt(b)print b # 結(jié)果是 2
實(shí)例中有 int 對(duì)象 2,指向它的變量是 b,在傳遞給 ChangeInt 函數(shù)時(shí),按傳值的方式復(fù)制了變量 b,a 和 b 都指向了同一個(gè) Int 對(duì)象,在 a=10 時(shí),則新生成一個(gè) int 值對(duì)象 10,并讓 a 指向它。
傳可變對(duì)象實(shí)例
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
# 可寫函數(shù)說明def changeme( mylist ): ? "修改傳入的列表"
mylist.append([1,2,3,4])
print "函數(shù)內(nèi)取值: ", mylist
return
# 調(diào)用changeme函數(shù)mylist = [10,20,30]changeme( mylist )print "函數(shù)外取值: ", mylist
實(shí)例中傳入函數(shù)的和在末尾添加新內(nèi)容的對(duì)象用的是同一個(gè)引用,故輸出結(jié)果如下:
函數(shù)內(nèi)取值: ?[10, 20, 30, [1, 2, 3, 4]]函數(shù)外取值: ?[10, 20, 30, [1, 2, 3, 4]]
參數(shù)
以下是調(diào)用函數(shù)時(shí)可使用的正式參數(shù)類型:
必備參數(shù)
關(guān)鍵字參數(shù)
默認(rèn)參數(shù)
不定長(zhǎng)參數(shù)
必備參數(shù)
必備參數(shù)須以正確的順序傳入函數(shù)。調(diào)用時(shí)的數(shù)量必須和聲明時(shí)的一樣。
調(diào)用printme()函數(shù),你必須傳入一個(gè)參數(shù),不然會(huì)出現(xiàn)語法錯(cuò)誤:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
#可寫函數(shù)說明def printme( str ): ? "打印任何傳入的字符串"
print str
return
#調(diào)用printme函數(shù)printme()
以上實(shí)例輸出結(jié)果:
Traceback (most recent call last):
File "test.py", line 11, in module
printme()TypeError: printme() takes exactly 1 argument (0 given)
關(guān)鍵字參數(shù)
關(guān)鍵字參數(shù)和函數(shù)調(diào)用關(guān)系緊密,函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值。
使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時(shí)參數(shù)的順序與聲明時(shí)不一致,因?yàn)?Python 解釋器能夠用參數(shù)名匹配參數(shù)值。
以下實(shí)例在函數(shù) printme() 調(diào)用時(shí)使用參數(shù)名:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
#可寫函數(shù)說明def printme( str ): ? "打印任何傳入的字符串"
print str
return
#調(diào)用printme函數(shù)printme( str = "My string")
以上實(shí)例輸出結(jié)果:
My string
下例能將關(guān)鍵字參數(shù)順序不重要展示得更清楚:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
#可寫函數(shù)說明def printinfo( name, age ): ? "打印任何傳入的字符串"
print "Name: ", name
print "Age ", age
return
#調(diào)用printinfo函數(shù)printinfo( age=50, name="miki" )
以上實(shí)例輸出結(jié)果:
Name: ?mikiAge ?50
默認(rèn)參數(shù)
調(diào)用函數(shù)時(shí),默認(rèn)參數(shù)的值如果沒有傳入,則被認(rèn)為是默認(rèn)值。下例會(huì)打印默認(rèn)的age,如果age沒有被傳入:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
#可寫函數(shù)說明def printinfo( name, age = 35 ): ? "打印任何傳入的字符串"
print "Name: ", name
print "Age ", age
return
#調(diào)用printinfo函數(shù)printinfo( age=50, name="miki" )printinfo( name="miki" )
以上實(shí)例輸出結(jié)果:
Name: ?mikiAge ?50Name: ?mikiAge ?35
不定長(zhǎng)參數(shù)
你可能需要一個(gè)函數(shù)能處理比當(dāng)初聲明時(shí)更多的參數(shù)。這些參數(shù)叫做不定長(zhǎng)參數(shù),和上述2種參數(shù)不同,聲明時(shí)不會(huì)命名?;菊Z法如下:
def functionname([formal_args,] *var_args_tuple ): ? "函數(shù)_文檔字符串"
function_suite
return [expression]
加了星號(hào)(*)的變量名會(huì)存放所有未命名的變量參數(shù)。不定長(zhǎng)參數(shù)實(shí)例如下:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
# 可寫函數(shù)說明def printinfo( arg1, *vartuple ): ? "打印任何傳入的參數(shù)"
print "輸出: "
print arg1
for var in vartuple: ? ? ?print var
return
# 調(diào)用printinfo 函數(shù)printinfo( 10 )printinfo( 70, 60, 50 )
以上實(shí)例輸出結(jié)果:
輸出:10輸出:706050
匿名函數(shù)
python 使用 lambda 來創(chuàng)建匿名函數(shù)。
lambda只是一個(gè)表達(dá)式,函數(shù)體比def簡(jiǎn)單很多。
lambda的主體是一個(gè)表達(dá)式,而不是一個(gè)代碼塊。僅僅能在lambda表達(dá)式中封裝有限的邏輯進(jìn)去。
lambda函數(shù)擁有自己的命名空間,且不能訪問自有參數(shù)列表之外或全局命名空間里的參數(shù)。
雖然lambda函數(shù)看起來只能寫一行,卻不等同于C或C++的內(nèi)聯(lián)函數(shù),后者的目的是調(diào)用小函數(shù)時(shí)不占用棧內(nèi)存從而增加運(yùn)行效率。
語法
lambda函數(shù)的語法只包含一個(gè)語句,如下:
lambda [arg1 [,arg2,.....argn]]:expression
如下實(shí)例:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
# 可寫函數(shù)說明sum = lambda arg1, arg2: arg1 + arg2
# 調(diào)用sum函數(shù)print "相加后的值為 : ", sum( 10, 20 )print "相加后的值為 : ", sum( 20, 20 )
以上實(shí)例輸出結(jié)果:
相加后的值為 : ?30相加后的值為 : ?40
return 語句
return語句[表達(dá)式]退出函數(shù),選擇性地向調(diào)用方返回一個(gè)表達(dá)式。不帶參數(shù)值的return語句返回None。之前的例子都沒有示范如何返回?cái)?shù)值,下例便告訴你怎么做:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
# 可寫函數(shù)說明def sum( arg1, arg2 ): ? # 返回2個(gè)參數(shù)的和."
total = arg1 + arg2
print "函數(shù)內(nèi) : ", total
return total
# 調(diào)用sum函數(shù)total = sum( 10, 20 )
以上實(shí)例輸出結(jié)果:
函數(shù)內(nèi) : ?30
變量作用域
一個(gè)程序的所有的變量并不是在哪個(gè)位置都可以訪問的。訪問權(quán)限決定于這個(gè)變量是在哪里賦值的。
變量的作用域決定了在哪一部分程序你可以訪問哪個(gè)特定的變量名稱。兩種最基本的變量作用域如下:
全局變量
局部變量
全局變量和局部變量
定義在函數(shù)內(nèi)部的變量擁有一個(gè)局部作用域,定義在函數(shù)外的擁有全局作用域。
局部變量只能在其被聲明的函數(shù)內(nèi)部訪問,而全局變量可以在整個(gè)程序范圍內(nèi)訪問。調(diào)用函數(shù)時(shí),所有在函數(shù)內(nèi)聲明的變量名稱都將被加入到作用域中。如下實(shí)例:
實(shí)例(Python 2.0+)
#!/usr/bin/python# -*- coding: UTF-8 -*-
total = 0 # 這是一個(gè)全局變量# 可寫函數(shù)說明def sum( arg1, arg2 ): ? #返回2個(gè)參數(shù)的和."
total = arg1 + arg2 # total在這里是局部變量.
print "函數(shù)內(nèi)是局部變量 : ", total
return total
#調(diào)用sum函數(shù)sum( 10, 20 )print "函數(shù)外是全局變量 : ", total
以上實(shí)例輸出結(jié)果:
函數(shù)內(nèi)是局部變量 : ?30函數(shù)外是全局變量 : ?0
代碼:
defnot_empty(s):
returnsandlen(s。strip())0
#returnsands。strip()
#如果直接單寫s。strip()那么s如果是None,會(huì)報(bào)錯(cuò),因?yàn)镹one沒有strip方法。
#如果s是None,那么Noneand任何值都是False,直接返回false
#如果s非None,那么判定s。trip()是否為空。
這樣子filter能過濾到None,"",""這樣的值。
分成兩部分看。第一部分是對(duì)長(zhǎng)度進(jìn)行序列。相當(dāng)于就是range(5)他的結(jié)果就是。01234。第二部分就是具體的排序規(guī)則。排序規(guī)則是用nums的值進(jìn)行排序,reverse沒申明就是默認(rèn)升序。就是用nums(0到4)的值進(jìn)行排序,根據(jù)這個(gè)結(jié)果返回的一個(gè)range(5)的數(shù)組。
擴(kuò)展資料:
根據(jù)PEP的規(guī)定,必須使用4個(gè)空格來表示每級(jí)縮進(jìn)。使用Tab字符和其它數(shù)目的空格雖然都可以編譯通過,但不符合編碼規(guī)范。支持Tab字符和其它數(shù)目的空格僅僅是為兼容很舊的的Python程序和某些有問題的編輯程序。
Python的函數(shù)支持遞歸、默認(rèn)參數(shù)值、可變參數(shù),但不支持函數(shù)重載。為了增強(qiáng)代碼的可讀性,可以在函數(shù)后書寫“文檔字符串”(Documentation Strings,或者簡(jiǎn)稱docstrings),用于解釋函數(shù)的作用、參數(shù)的類型與意義、返回值類型與取值范圍等??梢允褂脙?nèi)置函數(shù)help()打印出函數(shù)的使用幫助。
參考資料來源:百度百科-Python
1.常用內(nèi)置函數(shù):(不用import就可以直接使用)
help(obj) 在線幫助, obj可是任何類型
callable(obj) 查看一個(gè)obj是不是可以像函數(shù)一樣調(diào)用
repr(obj) 得到obj的表示字符串,可以利用這個(gè)字符串eval重建該對(duì)象的一個(gè)拷貝
eval_r(str) 表示合法的python表達(dá)式,返回這個(gè)表達(dá)式
dir(obj) 查看obj的name space中可見的name
hasattr(obj,name) 查看一個(gè)obj的name space中是否有name
getattr(obj,name) 得到一個(gè)obj的name space中的一個(gè)name
setattr(obj,name,value) 為一個(gè)obj的name space中的一個(gè)name指向vale這個(gè)object
delattr(obj,name) 從obj的name space中刪除一個(gè)name
vars(obj) 返回一個(gè)object的name space。用dictionary表示
locals() 返回一個(gè)局部name space,用dictionary表示
globals() 返回一個(gè)全局name space,用dictionary表示
type(obj) 查看一個(gè)obj的類型
isinstance(obj,cls) 查看obj是不是cls的instance
issubclass(subcls,supcls) 查看subcls是不是supcls的子類
類型轉(zhuǎn)換函數(shù)
chr(i) 把一個(gè)ASCII數(shù)值,變成字符
ord(i) 把一個(gè)字符或者unicode字符,變成ASCII數(shù)值
oct(x) 把整數(shù)x變成八進(jìn)制表示的字符串
hex(x) 把整數(shù)x變成十六進(jìn)制表示的字符串
str(obj) 得到obj的字符串描述
list(seq) 把一個(gè)sequence轉(zhuǎn)換成一個(gè)list
tuple(seq) 把一個(gè)sequence轉(zhuǎn)換成一個(gè)tuple
dict(),dict(list) 轉(zhuǎn)換成一個(gè)dictionary
int(x) 轉(zhuǎn)換成一個(gè)integer
long(x) 轉(zhuǎn)換成一個(gè)long interger
float(x) 轉(zhuǎn)換成一個(gè)浮點(diǎn)數(shù)
complex(x) 轉(zhuǎn)換成復(fù)數(shù)
max(...) 求最大值
min(...) 求最小值
用于執(zhí)行程序的內(nèi)置函數(shù)
complie 如果一段代碼經(jīng)常要使用,那么先編譯,再運(yùn)行會(huì)更快。
2.和操作系統(tǒng)相關(guān)的調(diào)用
系統(tǒng)相關(guān)的信息模塊 import sys
sys.argv是一個(gè)list,包含所有的命令行參數(shù).
sys.stdout sys.stdin sys.stderr 分別表示標(biāo)準(zhǔn)輸入輸出,錯(cuò)誤輸出的文件對(duì)象.
sys.stdin.readline() 從標(biāo)準(zhǔn)輸入讀一行 sys.stdout.write("a") 屏幕輸出a
sys.exit(exit_code) 退出程序
sys.modules 是一個(gè)dictionary,表示系統(tǒng)中所有可用的module
sys.platform 得到運(yùn)行的操作系統(tǒng)環(huán)境
sys.path 是一個(gè)list,指明所有查找module,package的路徑.
操作系統(tǒng)相關(guān)的調(diào)用和操作 import os
os.environ 一個(gè)dictionary 包含環(huán)境變量的映射關(guān)系 os.environ["HOME"] 可以得到環(huán)境變量HOME的值
os.chdir(dir) 改變當(dāng)前目錄 os.chdir('d:\\outlook') 注意windows下用到轉(zhuǎn)義
os.getcwd() 得到當(dāng)前目錄
os.getegid() 得到有效組id os.getgid() 得到組id
os.getuid() 得到用戶id os.geteuid() 得到有效用戶id
os.setegid os.setegid() os.seteuid() os.setuid()
os.getgruops() 得到用戶組名稱列表
os.getlogin() 得到用戶登錄名稱
os.getenv 得到環(huán)境變量
os.putenv 設(shè)置環(huán)境變量
os.umask 設(shè)置umask
os.system(cmd) 利用系統(tǒng)調(diào)用,運(yùn)行cmd命令
操作舉例:
os.mkdir('/tmp/xx') os.system("echo 'hello' /tmp/xx/a.txt") os.listdir('/tmp/xx')
os.rename('/tmp/xx/a.txt','/tmp/xx/b.txt') os.remove('/tmp/xx/b.txt') os.rmdir('/tmp/xx')
用python編寫一個(gè)簡(jiǎn)單的shell
#!/usr/bin/python
import os, sys
cmd = sys.stdin.readline()
while cmd:
os.system(cmd)
cmd = sys.stdin.readline()
用os.path編寫平臺(tái)無關(guān)的程序
os.path.abspath("1.txt") == os.path.join(os.getcwd(), "1.txt")
os.path.split(os.getcwd()) 用于分開一個(gè)目錄名稱中的目錄部分和文件名稱部分。
os.path.join(os.getcwd(), os.pardir, 'a', 'a.doc') 全成路徑名稱.
os.pardir 表示當(dāng)前平臺(tái)下上一級(jí)目錄的字符 ..
os.path.getctime("/root/1.txt") 返回1.txt的ctime(創(chuàng)建時(shí)間)時(shí)間戳
os.path.exists(os.getcwd()) 判斷文件是否存在
os.path.expanduser('~/dir') 把~擴(kuò)展成用戶根目錄
os.path.expandvars('$PATH') 擴(kuò)展環(huán)境變量PATH
os.path.isfile(os.getcwd()) 判斷是否是文件名,1是0否
os.path.isdir('c:\Python26\temp') 判斷是否是目錄,1是0否
os.path.islink('/home/huaying/111.sql') 是否是符號(hào)連接 windows下不可用
os.path.ismout(os.getcwd()) 是否是文件系統(tǒng)安裝點(diǎn) windows下不可用
os.path.samefile(os.getcwd(), '/home/huaying') 看看兩個(gè)文件名是不是指的是同一個(gè)文件
os.path.walk('/home/huaying', test_fun, "a.c")
遍歷/home/huaying下所有子目錄包括本目錄,對(duì)于每個(gè)目錄都會(huì)調(diào)用函數(shù)test_fun.
例:在某個(gè)目錄中,和他所有的子目錄中查找名稱是a.c的文件或目錄。
def test_fun(filename, dirname, names): //filename即是walk中的a.c dirname是訪問的目錄名稱
if filename in names: //names是一個(gè)list,包含dirname目錄下的所有內(nèi)容
print os.path.join(dirname, filename)
os.path.walk('/home/huaying', test_fun, "a.c")
文件操作
打開文件
f = open("filename", "r") r只讀 w寫 rw讀寫 rb讀二進(jìn)制 wb寫二進(jìn)制 w+寫追加
讀寫文件
f.write("a") f.write(str) 寫一字符串 f.writeline() f.readlines() 與下read類同
f.read() 全讀出來 f.read(size) 表示從文件中讀取size個(gè)字符
f.readline() 讀一行,到文件結(jié)尾,返回空串. f.readlines() 讀取全部,返回一個(gè)list. list每個(gè)元素表示一行,包含"\n"\
f.tell() 返回當(dāng)前文件讀取位置
f.seek(off, where) 定位文件讀寫位置. off表示偏移量,正數(shù)向文件尾移動(dòng),負(fù)數(shù)表示向開頭移動(dòng)。
where為0表示從開始算起,1表示從當(dāng)前位置算,2表示從結(jié)尾算.
f.flush() 刷新緩存
關(guān)閉文件
f.close()
regular expression 正則表達(dá)式 import re
簡(jiǎn)單的regexp
p = re.compile("abc") if p.match("abc") : print "match"
上例中首先生成一個(gè)pattern(模式),如果和某個(gè)字符串匹配,就返回一個(gè)match object
除某些特殊字符metacharacter元字符,大多數(shù)字符都和自身匹配。
這些特殊字符是 。^ $ * + ? { [ ] \ | ( )
字符集合(用[]表示)
列出字符,如[abc]表示匹配a或b或c,大多數(shù)metacharacter在[]中只表示和本身匹配。例:
a = ".^$*+?{\\|()" 大多數(shù)metachar在[]中都和本身匹配,但"^[]\"不同
p = re.compile("["+a+"]")
for i in a:
if p.match(i):
print "[%s] is match" %i
else:
print "[%s] is not match" %i
在[]中包含[]本身,表示"["或者"]"匹配.用
和
表示.
^出現(xiàn)在[]的開頭,表示取反.[^abc]表示除了a,b,c之外的所有字符。^沒有出現(xiàn)在開頭,即于身身匹配。
-可表示范圍.[a-zA-Z]匹配任何一個(gè)英文字母。[0-9]匹配任何數(shù)字。
\在[]中的妙用。
\d [0-9]
\D [^0-9]
\s [ \t\n\r\f\v]
\S [^ \t\n\r\f\v]
\w [a-zA-Z0-9_]
\W [^a-zA-Z0-9_]
\t 表示和tab匹配, 其他的都和字符串的表示法一致
\x20 表示和十六進(jìn)制ascii 0x20匹配
有了\,可以在[]中表示任何字符。注:?jiǎn)为?dú)的一個(gè)"."如果沒有出現(xiàn)[]中,表示出了換行\(zhòng)n以外的匹配任何字符,類似[^\n].
regexp的重復(fù)
{m,n}表示出現(xiàn)m個(gè)以上(含m個(gè)),n個(gè)以下(含n個(gè)). 如ab{1,3}c和abc,abbc,abbbc匹配,不會(huì)與ac,abbbc匹配。
m是下界,n是上界。m省略表下界是0,n省略,表上界無限大。
*表示{,} +表示{1,} ?表示{0,1}
最大匹配和最小匹配 python都是最大匹配,如果要最小匹配,在*,+,?,{m,n}后面加一個(gè)?.
match object的end可以得到匹配的最后一個(gè)字符的位置。
re.compile("a*").match('aaaa').end() 4 最大匹配
re.compile("a*?").match('aaaa').end() 0 最小匹配
使用原始字符串
字符串表示方法中用\\表示字符\.大量使用影響可讀性。
解決方法:在字符串前面加一個(gè)r表示raw格式。
a = r"\a" print a 結(jié)果是\a
a = r"\"a" print a 結(jié)果是\"a
使用re模塊
先用re.compile得到一個(gè)RegexObject 表示一個(gè)regexp
后用pattern的match,search的方法,得到MatchObject
再用match object得到匹配的位置,匹配的字符串等信息
RegxObject常用函數(shù):
re.compile("a").match("abab") 如果abab的開頭和re.compile("a")匹配,得到MatchObject
_sre.SRE_Match object at 0x81d43c8
print re.compile("a").match("bbab")
None 注:從str的開頭開始匹配
re.compile("a").search("abab") 在abab中搜索第一個(gè)和re_obj匹配的部分
_sre.SRE_Match object at 0x81d43c8
print re.compile("a").search("bbab")
_sre.SRE_Match object at 0x8184e18 和match()不同,不必從開頭匹配
re_obj.findall(str) 返回str中搜索所有和re_obj匹配的部分.
返回一個(gè)tuple,其中元素是匹配的字符串.
MatchObject的常用函數(shù)
m.start() 返回起始位置,m.end()返回結(jié)束位置(不包含該位置的字符).
m.span() 返回一個(gè)tuple表示(m.start(), m.end())
m.pos(), m.endpos(), m.re(), m.string()
m.re().search(m.string(), m.pos(), m.endpos()) 會(huì)得到m本身
m.finditer()可以返回一個(gè)iterator,用來遍歷所有找到的MatchObject.
for m in re.compile("[ab]").finditer("tatbxaxb"):
print m.span()
高級(jí)regexp
| 表示聯(lián)合多個(gè)regexp. A B兩個(gè)regexp,A|B表示和A匹配或者跟B匹配.
^ 表示只匹配一行的開始行首,^只有在開頭才有此特殊意義。
$ 表示只匹配一行的結(jié)尾
\A 表示只匹配第一行字符串的開頭 ^匹配每一行的行首
\Z 表示只匹配行一行字符串的結(jié)尾 $匹配第一行的行尾
\b 只匹配詞的邊界 例:\binfo\b 只會(huì)匹配"info" 不會(huì)匹配information
\B 表示匹配非單詞邊界
示例如下:
print re.compile(r"\binfo\b").match("info ") #使用raw格式 \b表示單詞邊界
_sre.SRE_Match object at 0x817aa98
print re.compile("\binfo\b").match("info ") #沒有使用raw \b表示退格符號(hào)
None
print re.compile("\binfo\b").match("\binfo\b ")
_sre.SRE_Match object at 0x8174948
分組(Group) 示例:re.compile("(a(b)c)d").match("abcd").groups() ('abc', 'b')
#!/usr/local/bin/python
import re
x = """
name: Charles
Address: BUPT
name: Ann
Address: BUPT
"""
#p = re.compile(r"^name:(.*)\n^Address:(.*)\n", re.M)
p = re.compile(r"^name:(?P.*)\n^Address:(?P.*)\n", re.M)
for m in p.finditer(x):
print m.span()
print "here is your friends list"
print "%s, %s"%m.groups()
Compile Flag
用re.compile得到RegxObject時(shí),可以有一些flag用來調(diào)整RegxObject的詳細(xì)特征.
DOTALL, S 讓.匹配任意字符,包括換行符\n
IGNORECASE, I 忽略大小寫
LOCALES, L 讓\w \W \b \B和當(dāng)前的locale一致
MULTILINE, M 多行模式,只影響^和$(參見上例)
VERBOSE, X verbose模式
新聞標(biāo)題:python包含五個(gè)函數(shù)的代碼,python語言代碼大全
URL分享:http://m.newbst.com/article8/hsejop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站改版、小程序開發(fā)、手機(jī)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)