【【python學(xué)院】這篇是我見(jiàn)過(guò)最詳細(xì)的Python數(shù)據(jù)類型詳解!沒(méi)有之一!不信?你看】http://toutiao.com/group/6546065683774439949/?iid=15906422033&app=explore_article×tamp=1524226667&tt_from=copy_link&utm_source=copy_link&utm_medium=toutiao_ios&utm_campaign=client_share
1. Python數(shù)學(xué)常量
在 math模塊中定義了三個(gè)數(shù)學(xué)常量
2. Python三角函數(shù)
要直接訪問(wèn)的,需要導(dǎo)入 math模塊, 然后通過(guò) math 靜態(tài)對(duì)象調(diào)用方法
函數(shù) | 描述 |
---|---|
acos(x) | 返回x的反余弦弧度值。 |
asin(x) | 返回x的反正弦弧度值。 |
atan(x) | 返回x的反正切弧度值。 |
atan2(y, x) | 返回給定的 X 及 Y 坐標(biāo)值的反正切值。 |
cos(x) | 返回x的弧度的余弦值。 |
hypot(x, y) | 返回歐幾里德范數(shù) sqrt(x*x y*y) 。 |
sin(x) | 返回的x弧度的正弦值。 |
tan(x) | 返回x弧度的正切值。 |
degrees(x) | 將弧度轉(zhuǎn)換為角度,如degrees(math.pi/2) , 返回90.0 |
radians(x) | 將角度轉(zhuǎn)換為弧度 |
3.Python數(shù)學(xué)函數(shù)
函數(shù) | 返回值 ( 描述 ) |
---|---|
abs(x) | 返回?cái)?shù)字的絕對(duì)值,如abs(-12) 返回 12 |
ceil(x) | 返回?cái)?shù)字的上入整數(shù)(小數(shù)向上取整),如math.ceil(4.1) 返回 5, math.ceil(4.0) 返回 4 |
cmp(x, y) | 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1; (Python在3.x中已經(jīng)棄用) |
exp(x) | 返回e的x次冪, 如math.exp(2) 返回7.38905609893065 |
fabs(x) | 返回?cái)?shù)字的絕對(duì)值,如 math.fabs(-10) 返回10.0 |
floor(x) | 返回?cái)?shù)字的下舍整數(shù)(小數(shù)向下取整),如math.floor(4.9)返回 4 |
log(x) | 如 math.log(math.e) 返回1.0, math.log(100,10) 返回2.0 |
log10(x) | 返回以10為基數(shù)的x的對(duì)數(shù),如 math.log10(100) 返回 2.0 |
max(x1, x2,...) | 返回給定參數(shù)的最大值,參數(shù)可以為序列。 |
min(x1, x2,...) | 返回給定參數(shù)的最小值,參數(shù)可以為序列。 |
modf(x) | 返回x的整數(shù)部分與小數(shù)部分(元組形式),兩部分的數(shù)值符號(hào)與x相同,整數(shù)部分以浮點(diǎn)型表示; 如: math.modf(99.09) , 返回(0.09000000000000341, 99.0) |
pow(x, y) | x**y 運(yùn)算后的值。 |
round(x [,n]) | 返回浮點(diǎn)數(shù)x的四舍五入值,如給出n值,則代表舍入到小數(shù)點(diǎn)后的位數(shù); 如round(90.09, 1)輸出:90.1; 如: round(90.09) 輸出:90 |
sqrt(x) | 返回?cái)?shù)字x的平方根, 如: math.sqrt(4) 返回 2.0 |
4-2. randrange
返回指定遞增基數(shù)集合中的一個(gè)隨機(jī)數(shù),默認(rèn)基數(shù)缺省值為1, 默認(rèn)類型為int
4-4. seed
該函數(shù)沒(méi)有返回值, 改變隨機(jī)數(shù)生成器的種子, 可生成同一個(gè)隨機(jī)數(shù)
4-5. shuffle
將列表的所有元素隨機(jī)排序, 沒(méi)有返回值
因元組不支持二次賦值, 所以元組不支持重新排列
二. 字符串
上一篇文章Python數(shù)據(jù)類型詳解01介紹了字符串的一些基礎(chǔ)知識(shí), 這里就主要介紹字符創(chuàng)中常用的函數(shù)和語(yǔ)法
2. 字符串格式化
把其他類型的數(shù)據(jù)格式化為字符串形式返回, 字符串和其他類型之間要有 %
分開(kāi)
符號(hào) | 描述 |
---|---|
%c | 格式化字符及其ASCII碼 |
%s | 格式化字符串 |
%d | 格式化整數(shù) |
%u | 格式化無(wú)符號(hào)整型 |
%o | 格式化無(wú)符號(hào)八進(jìn)制數(shù) |
%x | 格式化無(wú)符號(hào)十六進(jìn)制數(shù) |
%X | 格式化無(wú)符號(hào)十六進(jìn)制數(shù)(大寫) |
%f | 格式化浮點(diǎn)數(shù)字,可指定小數(shù)點(diǎn)后的精度 |
%e | 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù) |
%E | 作用同%e,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù) |
%g | %f和%e的簡(jiǎn)寫 |
%G | %f 和 %E 的簡(jiǎn)寫 |
%p | 用十六進(jìn)制數(shù)格式化變量的地址 |
使用方式
4. 格式化操作符輔助指令
相關(guān)操作符具體的使用后面再說(shuō)
符號(hào) | 功能 |
---|---|
* | 定義寬度或者小數(shù)點(diǎn)精度 |
- | 在負(fù)數(shù)前面顯示加號(hào)( - ) |
在正數(shù)前面顯示加號(hào)( ) | |
# | 在八進(jìn)制數(shù)前面顯示零('0'),在十六進(jìn)制前面顯示'0x'或者'0X'(取決于用的是'x'還是'X') |
0 | 顯示的數(shù)字前面填充'0'而不是默認(rèn)的空格 |
% | %% 輸出一個(gè)單一的'%' |
m.n. | m 是顯示的最小總寬度,n 是小數(shù)點(diǎn)后的位數(shù)(如果可用的話) |
: | 后面帶填充的字符,只能是一個(gè)字符,不指定則默認(rèn)是用空格填充 |
{{}} | 轉(zhuǎn)義大括號(hào), 類似%的輸出 |
5. 數(shù)字格式化操作符
數(shù)字 | 格式 | 輸出 | 描述 |
---|---|---|---|
3.1415926 | {:.2f} | 3.14 | 保留小數(shù)點(diǎn)后兩位 |
3.1415926 | {: .2f} | 3.14 | 帶符號(hào)保留小數(shù)點(diǎn)后兩位 |
-1 | {: .2f} | -1.00 | 帶符號(hào)保留小數(shù)點(diǎn)后兩位 |
2.71828 | {:.0f} | 3 | 不帶小數(shù) |
5 | {:0>2d} | 05 | 數(shù)字補(bǔ)零 (填充左邊, 寬度為2) |
5 | {:x<4d} | 5xxx | 數(shù)字補(bǔ)x (填充右邊, 寬度為4) |
10 | {:x<4d} | 10xx | 數(shù)字補(bǔ)x (填充右邊, 寬度為4) |
1000000 | {:,} | 1,000,000 | 以逗號(hào)分隔的數(shù)字格式 |
0.25 | {:.2%} | 25.00% | 百分比格式 |
1000000000 | {:.2e} | 1.00e 09 | 指數(shù)記法 |
13 | {:10d} | 13 | 右對(duì)齊 (默認(rèn), 寬度為10) |
13 | {:<10d} | 13 | 左對(duì)齊 (寬度為10) |
13 | {:^10d} | 13 | 中間對(duì)齊 (寬度為10) |
進(jìn)制轉(zhuǎn)換(以十進(jìn)制數(shù)字11為例)
進(jìn)制 | 格式 | 輸出 |
---|---|---|
二進(jìn)制 | '{:b}'.format(11) | 1011 |
十進(jìn)制 | '{:d}'.format(11) | 11 |
八進(jìn)制 | '{:o}'.format(11) | 13 |
十六進(jìn)制 | '{:x}'.format(11) | b |
小寫十六進(jìn)制 | '{:#x}'.format(11) | 0xb |
大寫十六進(jìn)制 | '{:#X}'.format(11) | 0XB |
方法 | 返回結(jié)果 | 描述 |
---|---|---|
'titan'.capitalize() | Titan | 把字符串的第一個(gè)字符大寫 |
'hello\tpython'.expandtabs() | hello python | 把字符串 string 中的 tab 符號(hào)轉(zhuǎn)為空格,tab 符號(hào)默認(rèn)的空格數(shù)是 8 |
str5.find('irl') | 11 | 檢測(cè) str 是否包含在 string 中,如果 beg 和 end 指定范圍,則檢查是否包含在指定范圍內(nèi),如果是返回開(kāi)始的索引值,否則返回-1 |
str5.rfind('irl') | 11 | 同find方法, 從右向左查詢 |
str5.index('gi') | 10 | 跟find()方法一樣,只不過(guò)如果str不在 string中會(huì)報(bào)一個(gè)異常. |
str5.rindex('gi') | 10 | 同index方法, 從右向左查詢 |
'jun0929'.isalnum() | True | 至少有一個(gè)字符并且所有字符都是字母或數(shù)字則返回 True,否則返回 False |
'titan'.isalpha() | True | 至少有一個(gè)字符并且所有字符都是字母則返回 True,否則返回 False |
u'23e'.isdecimal() | False | 字符串只包含十進(jìn)制字符返回True,否則返回False(只針對(duì)unicode對(duì)象) |
'123456'.isdigit() | True | 字符串只包含數(shù)字則返回 True 否則返回 False |
'23e'.islower() | True | 字符串中包含至少一個(gè)區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是小寫,則返回 True,否則返回 False |
u'23443434'isnumeric() | True | 字符串中只包含數(shù)字字符,則返回 True,否則返回 False(只針對(duì)unicode對(duì)象) |
' '.isspace() | True | 字符串中只包含空格,則返回 True,否則返回 False. |
'JING'.isupper() | True | 字符串中包含至少一個(gè)區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是大寫,則返回 True,否則返回 False |
'-'.join( ['a', 's', 'd'] ) | a-s-d | 用于將序列中的元素以指定的字符連接生成一個(gè)新的字符串 |
'THIS'.lower | this | 返回將字符串中所有大寫字符轉(zhuǎn)換為小寫后生成的字符串 |
'88this'.lstrip('8') | this | 返回截掉字符串左邊的空格或指定字符后生成的新字符串 |
'this88'.rstrip('8') | this | 返回截掉字符串右邊的空格或指定字符后生成的新字符串 |
max('python') | z | 返回字符串中最大的字母 |
min('python') | h | 返回字符串中最小的字母 |
'https://www.titanjun.top'.partition('://') | ('https', '://', 'www.titanjun.top') | 返回一個(gè)3元的元組,第一個(gè)為分隔符左邊的子串,第二個(gè)為分隔符本身,第三個(gè)為分隔符右邊的子串 |
'this'.startswith('th', 1, 4) | False | 檢查字符串在制定范圍內(nèi)是否是以指定子字符串開(kāi)頭 |
'0jun0'.strip('0') | jun | 返回移除字符串頭尾指定的字符生成的新字符串 |
'Python'.swapcase() | pYTHON | 返回大小寫字母轉(zhuǎn)換后生成的新字符串 |
'hello python'.title() | Hello Python | 返回所有單詞都是以大寫開(kāi)始 |
'jun'.upper() | JUN | 返回小寫字母轉(zhuǎn)為大寫字母的字符串 |
6-6. replace()方法
返回字符串中的 old(舊字符串) 替換成 new(新字符串)后生成的新字符串,如果指定第三個(gè)參數(shù)max,則替換不超過(guò) max 次
6-7. split()方法
通過(guò)指定分隔符對(duì)字符串進(jìn)行切片,如果參數(shù) num 有指定值,則僅分隔 num 個(gè)子字符串
還沒(méi)更新完哦!
聯(lián)系客服