1.1 例如:print(hex(2))案例
創(chuàng)新互聯(lián)公司于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目網(wǎng)站設計、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元淮陽做網(wǎng)站,已為上家服務,為淮陽各地企業(yè)和個人服務,聯(lián)系電話:13518219792
1.2 輸出函數(shù):print(hex(2))
1.3 輸出結(jié)果:0x2
1.4 解析說明:返回16進制的數(shù)。
2.1 例如:print(chr(10))案例
2.2 輸出函數(shù):print(chr(10))
2.3 輸出結(jié)果:0o12
2.4 解析說明:返回當前整數(shù)對應的ASCll碼
3.1 例如:print(ord("b"))案例
3.2 輸出函數(shù):print(ord("b"))
3.3 輸出結(jié)果:98
3.4 解析說明:返回當前ASCll碼的10進制數(shù)
4.1 例如:print(chr(97))
4.2 輸出函數(shù):print(chr(97))
4.3 輸出結(jié)果:b
4.4 解析說明:返回當前ASCll碼的10進制數(shù)。
案例一:給你一個字符串,s = 'hello kitty'
1.1 輸出函數(shù):print(s.capitalize())
1.2 輸出結(jié)果:0x2
1.3 解析說明:返回16進制的數(shù)。
2.1輸出函數(shù):print(s.replace('kitty','kuang'))
2.2 輸出結(jié)果:hello kuang
2.3 解析說明:替換功能,將kitty換成kuang。
2.4 輸出函數(shù):print(s.replace('4','KK'))
2.5 輸出結(jié)果:12KK12KK
2.6 解析說明:所有的4都替換成KK
2.7 輸出函數(shù):print(s.replace('4','KK'))
2.8 輸出結(jié)果:12KK12KK124
2.9 解析說明:將前兩個的4替換成go
案例一:給你一個字符串,ip = '192.168.1.1'
3.1 輸出函數(shù):print(ip.split(','))
3.2 輸出結(jié)果:['192.168.1.1']
3.3 解析說明:將字符串分割成列表
案例一:給你一個字符串,ip = '192.168.1.1'
3.3 輸出函數(shù):print(ip.split(',',2))
3.4 輸出結(jié)果:['192.168.1.1']
3.5 解析說明:從第二個開始分割成列表
python系統(tǒng)提供了下面常用的函數(shù):
1. 數(shù)學庫模塊(math)提供了很多數(shù)學運算函數(shù);
2.復數(shù)模塊(cmath)提供了用于復數(shù)運算的函數(shù);
3.隨機數(shù)模塊(random)提供了用來生成隨機數(shù)的函數(shù);
4.時間(time)和日歷(calendar)模塊提供了能處理日期和時間的函數(shù)。
注意:在調(diào)用系統(tǒng)函數(shù)之前,先要使用import 語句導入 相應的模塊
該語句將模塊中定義的函數(shù)代碼復制到自己的程 序中,然后就可以訪問模塊中的任何函數(shù),其方 法是在函數(shù)名前面加上“模塊名.”。
希望能幫到你。
1、print()函數(shù):打印字符串;
2、raw_input()函數(shù):從用戶鍵盤捕獲字符;
3、len()函數(shù):計算字符長度;
4、format()函數(shù):實現(xiàn)格式化輸出;
5、type()函數(shù):查詢對象的類型;
6、int()函數(shù)、float()函數(shù)、str()函數(shù)等:類型的轉(zhuǎn)化函數(shù);
7、id()函數(shù):獲取對象的內(nèi)存地址;
8、help()函數(shù):Python的幫助函數(shù);
9、s.islower()函數(shù):判斷字符小寫;
10、s.sppace()函數(shù):判斷是否為空格;
11、str.replace()函數(shù):替換字符;
12、import()函數(shù):引進庫;
13、math.sin()函數(shù):sin()函數(shù);
14、math.pow()函數(shù):計算次方函數(shù);
15、os.getcwd()函數(shù):獲取當前工作目錄;
16、listdir()函數(shù):顯示當前目錄下的文件;
17、time.sleep()函數(shù):停止一段時間;
18、random.randint()函數(shù):產(chǎn)生隨機數(shù);
19、range()函數(shù):返回一個列表,打印從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ù)的絕對值;
34、file.sort()函數(shù):對書數(shù)據(jù)排序;
35、tuple()函數(shù):創(chuàng)建一個元組;
36、find()函數(shù):查找 返回的是索引;
37、dict()函數(shù):創(chuàng)建字典;
38、clear()函數(shù):清楚字典中的所有項;
39、copy()函數(shù):復制一個字典,會修改所有的字典;
40、 get()函數(shù):查詢字典中的元素。
…………
abs() divmod() input() open() staticmethod()
all() enumerate() int() ord() str()
any() eval() isinstance() pow() sum()
basestring() execfile() issubclass() print() super()
bin() file() iter() property() tuple()
bool() filter() len() range() type()
bytearray() float() list() raw_input() unichr()
callable() format() locals() reduce() unicode()
chr() frozenset() long() reload() vars()
classmethod() getattr() map() repr() xrange()
cmp() globals() max() reverse() zip()
compile() hasattr() memoryview() round() __import__()
complex() hash() min() set()
delattr() help() next() setattr()
dict() hex() object() slice()
dir() id() oct() sorted()
python常見的內(nèi)置函數(shù)有:
1. abs()函數(shù)返回數(shù)字的絕對值。
2. all() 函數(shù)用于判斷給定的參數(shù)中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、None、False 外都算 True;空元組、空列表返回值為True。
3. any() 函數(shù)用于判斷給定的參數(shù)是否全部為False,是則返回False,如果有一個為True,則返回True。 元素除了是 0、空、False外都算 TRUE。
4. bin()函數(shù)返回一個整數(shù)int或者長整數(shù)long int的二進制表示。
5. bool() 函數(shù)用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果參數(shù)不為空或不為0,返回True;參數(shù)為0或沒有參數(shù),返回False。
6. bytearray()方法返回一個新字節(jié)數(shù)組。這個數(shù)組里的元素是可變的,并且每個元素的值范圍: 0 = x 256(即0-255)。即bytearray()是可修改的二進制字節(jié)格式。
7. callable()函數(shù)用于檢查一個對象是否可調(diào)用的。對于函數(shù)、方法、lambda函式、類以及實現(xiàn)了 __call__ 方法的類實例, 它都返回 True。(可以加括號的都可以調(diào)用)
8. chr()函數(shù)用一個范圍在range(256)內(nèi)(即0~255)的整數(shù)作參數(shù),返回一個對應的ASCII數(shù)值。
9. dict()函數(shù)用來將元組/列表轉(zhuǎn)換為字典格式。
10. dir()函數(shù)不帶參數(shù)時,返回當前范圍內(nèi)的變量、方法和定義的類型列表;帶參數(shù)時,返回參數(shù)的屬性、方法列表。
擴展資料:
如何查看python3.6的內(nèi)置函數(shù)?
1、首先先打開python自帶的集成開發(fā)環(huán)境IDLE;
2、然后我們直接輸入"dir(__builtins__)",需要注意的是builtins左右的下劃線都是兩個;
3、回車之后我們就可以看到python所有的內(nèi)置函數(shù);
4、接下來我們學習第二種查看python內(nèi)置函數(shù)的方法,我們直接在IDLE中輸入"import builtins",然后輸入"dir(builtins)";
5、然后回車,同樣的這個方法也可以得到所有的python內(nèi)置的函數(shù);
6、這里我們可以使用python內(nèi)置函數(shù)len()來查看python內(nèi)置函數(shù)的個數(shù),這里我們直接輸入"len(dir(builtins))";
7、回車之后我們可以看到系統(tǒng)返回值153,說明我們現(xiàn)在這個版本中有153個內(nèi)置函數(shù);
8、最后我們介紹一個比較有用的內(nèi)置函數(shù)"help",python內(nèi)置函數(shù)有一百多個,我們當然不能記住所有的函數(shù),這里python提供了一個"help"函數(shù),我們來看一個例子一起來體會一下help函數(shù)的用法,這里我們直接輸入"help(len)",然后回車,會看到系統(tǒng)給我們對于內(nèi)置函數(shù)"len"的解釋,當然對于其他函數(shù)可能會有更加詳細的解釋以及用法提示。
pandas官方文檔:
對常用函數(shù)做了匯總,每個函數(shù)的參數(shù)可能不是全的,但是常用的,不常用的沒總結(jié),如有問題,請不吝賜教,謝謝!
1、創(chuàng)建Series
? 通用函數(shù):pd.Series(values,index)
1)pd.Series([1,2,3],index=[‘a(chǎn)’,‘b’,‘c‘])
2)pd.Series(np.array([1,2,3]),index=[‘a(chǎn)’,‘b’,‘c‘])
3)pd.Series({ 'a':1,? 'b':2,? 'c':3})
? ? Series轉(zhuǎn)字典:Series.to_dict()
說明:Series的values參數(shù)是python中常見的一維數(shù)據(jù)類型。
2、屬性
1)Series.values ---array([1,2,3])
? ? ?? Series的values是array類型
2)Series.index---index([‘a(chǎn)’,‘b’,‘c‘])
? ? ?? 未指定index時,自動生成 0-(N-1)的整數(shù)索引,
? ? ?? 指定 index時,使用指定索引。
3、Series的索引與切片
?? Series[0] / Series['a']? : Sereis可以位置索引或標簽索引,也可以進行切片操作
1、創(chuàng)建DataFrame
1) 創(chuàng)建DataFrame的通用函數(shù):
df = pd.DataFrame(values,index,columns)
pd.dataFrame([[1,2,3],[4,5,6],[7,8,9]],index=['a','b','c'],columns=['bj','sh','sz'])
pd.dataFrame(np.arange(1,10).reshape(3,3),index=['a','b','c'],columns=['bj','sh','sz'])
pd.dataFrame('bj':[1,4,7],'sh':[2,5,8],'sz':[3,6,9],index=['a','b','c'])
說明:創(chuàng)建方法與Sries類似,Series的values參數(shù)是python中常見的一維數(shù)據(jù)類型,DataFrame的values參數(shù)是python中常見的二維數(shù)據(jù)類型。
2) 通過網(wǎng)頁中復制數(shù)據(jù)快捷創(chuàng)建
? ? import webbrowser
? ? link = ''
? ? webbrowser.open(link)
? ? 打開界面進行復制,將數(shù)據(jù)復制到粘貼板中
? ? df = pd.read_clipboard() ? #從粘貼板中讀取數(shù)據(jù)
3)通過Series創(chuàng)建DataFrame
? ? df = pd.DataFrame([s1,s2,s3],columns=['bj','sh','sz'])
? ? 注意:單獨的s1,s2,s3是縱向排列的的Series,但是在DataFrame中是橫向排列的。
? ? 自己總結(jié):Series除了打印出來是Series格式外,其他時候可以直接當作list來操作。
2、屬性
1)df.columns
? ? 通過columns生成新的DataFrame
? ? df_new = pd.DataFrame(df,columns=['x1','x2'])
? ? 或者df_new = df[['x1','x2']]
2)df.shape? 顯示行列數(shù)
3)df.head() ? 默認顯示前5行
4)df.tail() ? ? 默認顯示后5行
3、獲取DataFrame的列
1)獲取DataFrame某一列
? ? ? df.x1或df['x1']:返回值是Series,可以理解為一個DataFrame是由多個Series組成的。
? 2) 獲取DataFrame某幾列
? ? ? df_new = df[['x1','x2','x3']]
4、為某列賦值
? 1) df['x1'] = range(10)
? 2) df['x1'] = numpy.arange(10)
? 3) df['x1'] = pd.Series(np.arange(10))
? 說明:類似于創(chuàng)建Series
5、為某列對應的特定行重新賦值
? ? df['x1'] = pd.Series([2,3],index=[0,1])
? ? 將列為x1,行索引為0和1的值改為2,3
6、獲取DadaFrame的行
? for row in DataFrame.iterrows():
? ? ? ? ? print(row[0],row[1])
? #每個row是一個元祖,包含2個元素,row[0]是整型索引,row[1]是Series,所以從行的角度也可以看出,一個DataFrame是由多個Series組成的。
7、DataFrame的轉(zhuǎn)置
? df_new = df.T
1、粘貼板的io
? df = pd.read_clipboard()
? df.to_clipboard()
2、csv的io
?? df.to_csv('xxx.csv')
?? df = pd.read_csv('xxx.csv')
3、json的io
?? df.to_json()
?? pd.read_json(df.to_json())
4、excel的io
? ? df.to_excel('xx.xlsx')
? ? df = pd.read_excel('xx.xlsx')
5、df = pd.read_sql('')
? ? df.to_sql('')
1、iloc
? sub_df = df.iloc[10:20,:]? 選取DataFrame的10-20行,所有列數(shù)據(jù)
? sub_df = df.iloc[10:20,0:2]
? 說明:iloc函數(shù)是位置索引,與索引的名字無關。
2、loc
? sub_df = df.loc[10:20,:'movie_name']
? 說明:loc是標簽索引,10,20,'movie_name'? 都是索引名字,與位置無關。
1、Series.reindex(index=['x1','x2','x3'],fill_value=10)
? 將df重新索引,并且將NaN空值用10進行填充
2、Series.reindex(index=range(15),method='ffill')
前項填充,后面的值用前面的值進行填充
通過reindex想到,如果想新增一個空列或者空行,可以用reindex方法,同樣地,想減少某些行或者某些列,也可以用reindex方法。
? 繼reindex之后刪除行列的函數(shù)操作
? Series.drop('A') ? #刪除'A'所對應的值
? DataFrame.drop(label,axis)?
? label可以是行名也可以是列名,label是行的話axis是0,label是列的話axis是1。
** 刪除行還可以用 del df['A']
nan是numpy的一種數(shù)據(jù)類型,np.nan,float類型
任何數(shù)據(jù)與nan的運算結(jié)果都是nan
1、nan in Series
? Series.isnull()? --返回value為True或者False的Series
? Series.notnull()? --返回value為True或者False的Series
? Series.dropna()? --返回刪除nan值后的Series
? Series.fillna(method='ffill')? --前項插值,按照前面的值填充后面的空值
2、nan in DataFrame
? df.isnull()? --返回value為True或者False的DataFrame
? df.notnull()? --返回value為True或者False的DataFrame
? df.dropna(axis=0/1,how='any/all',thresh=None)
? 說明:axis表示刪除行為nan或者列為nan;
? ? ? ? ? ? any表示只要有一個為空,all表示行中的每個元素或者列中的每個元素為空;
? ? ? ? ? ? thresh是閾值的意思,表示某行或者某列nan的個數(shù)達到閾值的個數(shù)時才刪除該行或該列。
? df.fillna(value=1)? ---所有的空值都填充為1
? df.fillna(value={0:0,1:1,2:2}) ---將0列的空值填為0,1列的空值填為1,2列的空值填為2,默認為填充列
? 注意:fillna和dropna的特點,生成新的DataFrame,原來的DataFrame不變。
1、多重索引介紹
Series = pd.Series(np.random.randn(6),index=[['1','1','1','2','2','2'],['a','b','c','a','b','c']])
'1','2'為一級索引,'a','b','c'為二級索引
df 可以看做是索引的'1','2'的Series
Series['1']? --Series
Series['1']['a']? --value
Series[:,'a'] --選擇'1'和'2'中的'a'對應的值
2、多重索引格式轉(zhuǎn)為二維DataFrame
df = Series.unstack() --轉(zhuǎn)為二維DataFrame
3、多重索引在DataFrame中的操作
1、 map函數(shù)與apply函數(shù)、applymap函數(shù)的區(qū)別:
? 1)map函數(shù)對Series中的每個元素作用;
? 2)applymap函數(shù)對DataFrame中的每個元素作用;
? 3)apply函數(shù)對對DataFrame和Series的一列做整體運算。
2、Series.replace(to_replace=[2,3,4],values=[20,30,40])? 替換Series中多個值
Series.replace({1:10,2:20})? 將索引為1的值替換為10,將索引為2的值替換為20
df.sum()? --默認按照列進行求和,nan的值被忽略
df.min()? --默認按照列求最小值
df.max()? --默認按照列求最大值
df.mean()? --默認按照列求平均值
df.describe()? --默認按照列進行描述
df.sum(axis=1)? --按行求和,nan的值被忽略
#axis=0表示對橫軸進行操作,但是運算中表現(xiàn)為縱軸操作
#axis=1表示對縱軸進行操作,但是運算中表現(xiàn)為橫軸操作
bins = [0,59,70,80,100],bins是分割范圍
score_cat = pd.cut(Series,bins)? ---得到catgory類型的數(shù)據(jù)
DataFrame的分箱技術很棒啊!
pd['catgory'] = pd.cut(df['a'],bins=[0,59,70,80,100],labels=['low','ok','good','great'])
--新增一列,將a列的值按照labels進行分類標記,good!!!
#生成長度為3的隨機字符串? pd.util.testing.rands(3)
1、按照一列分組
? g = df.groupby('city')
? g是分組類型數(shù)據(jù),打印不出來,所以看不到,但是有屬性和方法可以間接的了解
1) g.groups? --得到分的幾個組,和每個組包含的索引
2)g.get_group('BJ')? --得到'BJ'所對應的組
3)groupby = split +apply +combine
? ? ?? g.mean()? --求每組的平均值
? ? ?? g.max() ? --求每組的最大值
? ? ?? g.min() ? --求每組的最小值
? ? ?? g.count()
? ? ?? g.describe()
? 4)g是一個可迭代對象,可以用list函數(shù)將其轉(zhuǎn)化為list
? ? ? list(g) -- [('組名1',DataFrame1),('組名2',DataFrame2),(),()]
? ? ? dict(list(g))? --將其轉(zhuǎn)化為字典
? 同時可以通過for循環(huán)進行遍歷操作:for item,desc in g:print(item,desc)
? #怪不得分組后不是DataFrame,因為元組的第一個元素是'分組名'。
2、按照多列分組
? g_new = df.groupby(['city','wind'])
? 得到生成器((('分組1','分組2'),DataFrame),(),()...)
? g_new.get_group(('分組1','分組2'))
? for (name_1,name_2),group in g_new:
? ? ? ? ? print((name_1,name_2),group)
g.mean()? --求每組的平均值
與g.agg('mean')方法一樣
pd.pivot_table(df,index=['',''],aggfuc='sum',values=['',''])
index是分組的組名,values是透視表呈現(xiàn)結(jié)果的列,columns是values下的分解
#感覺透視表呈現(xiàn)的結(jié)果就是groupby+agg后的結(jié)果
#分析者需要對數(shù)據(jù)結(jié)構有一定的了解
df.sort_values(by='',ascending=True/False)[:10]? df可以索引
df.value_counts()? --按值計數(shù)
df.['a'] = df['b'].apply(lambda x:x0)? --DataFrame中的True/False
通過g.size()可以看到被groupby之后的數(shù)據(jù),得到的是一個Series
1、Series的排序:
1)對值進行排序
Series.sort_values()? ---直接對Series的值進行排序
2)通過索引進行排序
Series.sort_index()?
#默認都是升序排列
2、DataFrame的排序
df.sort_values(by='')? --按照某列的順序進行排序
df['a'].sort_values()? --返回對a列數(shù)據(jù)的排序結(jié)果,只返回a列
1、df.index = Series(['a','b','c'])? 直接對index賦予新值
2、df.index = df.index.map(str.upper)
map函數(shù)中只傳入新的函數(shù)名即可
3、df.rename(index=str.upper,columns=str.lower)
? 或者傳遞字典,進行一一轉(zhuǎn)換
pd.merge(df1,df2,on=None,how='left/right/inner/outer')
pd.merge(df1,df2)? --沒有on參數(shù)默認先找相同的columns,然后在columns下找相同的values
pd.merge(df1,df2,on='columns')? --on參數(shù)是指按照指定列進行merge
left:表示以左邊的數(shù)據(jù)表為基準,進行填充右面的數(shù)據(jù)
right:表示以右邊的數(shù)據(jù)表為基準,填充左邊的數(shù)據(jù)
outer:以on的指定列的所有值為基準,填充兩邊的數(shù)據(jù)
inner:默認inner,相同on指定的columns下的相同values對應的左右兩邊的數(shù)據(jù)
1、concat拼接
pd.concat([Series1,Series2])
pd.concat([df1,df2])? -- 上下疊加,將沒有的列進行填充
2、combine組合
Series1.combine_first(Series2)? --用Series2的值去填充Series1中為空的值
df1.combine_first(df2)? ---用df2將df1中的空值填充
df['A'] = df['A'].apply(str.upper)? ---apply函數(shù)中也只輸入函數(shù)名
len(df)? --求df的長度
len(df['a'].unique())? --查看a列中不重復數(shù)據(jù)的多少
Series.duplicated()? --返回一列True/False的Series
Series.drop_duplicates()? --刪除重復值
df.drop_duplicates('a',keep='first/last')
df.drop_duplicates()? --刪除完全重復的行
參數(shù):'a'表示以a列為基準,刪除重復值
? ? ? ? ? first表示保留第一個,last表示保留最后一個
data_list = pd.date_range(start,end,period='D',freq)
period='D',以天為單位
freq = 'W' 以周為單位
freq = 'W-Mon'以每周一位單位
freq = '5H'? 以5h為單位
以data_range作為索引提取數(shù)據(jù)比較簡單
df[datetime(2017,9,1)]
df['2017-09-01']
df['20170901']
df['201709']
對時間序列數(shù)據(jù)進行分組聚合操作:
s1.resample('M').mean()? --以月為單位進行采樣,然后求每組的平均值
s1.resample('H').ffill()? --前項填充
s1.resample('H').bfill()? --后項填充
補充:1)jupyter中可以執(zhí)行l(wèi)inux命令,太棒了!
? ? ? ? ? ? !ls
? ? ? ? ? ? !more xxx.csv
? ? ? ? ? ? !pwd? 等等
? ? ?? 2)jupyter 查看函數(shù)幫助的快捷鍵:摁住shift + tab? 棒!!!
文章名稱:python函數(shù)大全表,python 函數(shù)表
URL鏈接:http://chinadenli.net/article34/heccse.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google、手機網(wǎng)站建設、自適應網(wǎng)站、網(wǎng)站收錄、關鍵詞優(yōu)化、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)