一些基本的操作,在工作者遇到相關(guān)問題要有相關(guān)印象。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供靈川網(wǎng)站建設(shè)、靈川做網(wǎng)站、靈川網(wǎng)站設(shè)計、靈川網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、靈川企業(yè)網(wǎng)站模板建站服務(wù),十余年靈川做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。一、 你想對浮點數(shù)執(zhí)行指定精度的舍入運(yùn)算
對于簡單的舍入運(yùn)算,使用內(nèi)置的 round(value, ndigits) 函數(shù)即可。比如:
>>> round(1.23, 1)
1.2
>>> round(1.27, 1)
1.3
>>> round(-1.27, 1)
-1.3
>>> round(1.25361,3)
1.254
>>>
當(dāng)一個值剛好在兩個邊界的中間的時候, round 函數(shù)返回離它最近的偶數(shù)。 也就是說,對1.5或者2.5的舍入運(yùn)算都會得到2。
傳給 round() 函數(shù)的 ndigits 參數(shù)可以是負(fù)數(shù),這種情況下, 舍入運(yùn)算會作用在十位、百位、千位等上面。比如:
>>> a = 1627731
>>> round(a, -1)
1627730
>>> round(a, -2)
1627700
>>> round(a, -3)
1628000
>>>
不要將舍入和格式化輸出搞混淆了。 如果你的目的只是簡單的輸出一定寬度的數(shù),你不需要使用 round() 函數(shù)。 而僅僅只需要在格式化的時候指定精度即可。比如:
>>> x = 1.23456
>>> format(x, '0.2f')
'1.23'
>>> format(x, '0.3f')
'1.235'
>>> 'value is {:0.3f}'.format(x)
'value is 1.235'
>>>
二、進(jìn)制轉(zhuǎn)化
為了將整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制或十六進(jìn)制的文本串, 可以分別使用 bin() , oct() 或 hex()函數(shù):
>>> x = 1234
>>> bin(x)
'0b10011010010'
>>> oct(x)
'0o2322'
>>> hex(x)
'0x4d2'
>>>
為了以不同的進(jìn)制轉(zhuǎn)換整數(shù)字符串,簡單的使用帶有進(jìn)制的 int() 函數(shù)即可:
>>> int('4d2', 16)
1234
>>> int('10011010010', 2)
1234
>>>
三、分?jǐn)?shù)相關(guān)運(yùn)算
>>> from fractions import Fraction
>>> a = Fraction(5, 4)
>>> b = Fraction(7, 16)
>>> print(a + b)
27/16
>>> print(a * b)
35/64>>> # Getting numerator/denominator
>>> c = a * b
>>> c.numerator
35
>>> c.denominator
64>>> # Converting to a float
>>> float(c)
0.546875>>> # Limiting the denominator of a value
>>> print(c.limit_denominator(8))
4/7>>> # Converting a float to a fraction
>>> x = 3.75
>>> y = Fraction(*x.as_integer_ratio())
>>> y
Fraction(15, 4)
>>>
四、random模塊
random 模塊有大量的函數(shù)用來產(chǎn)生隨機(jī)數(shù)和隨機(jī)選擇元素。 比如,要想從一個序列中隨機(jī)的抽取一個元素,可以使用 random.choice() :
>>> import random
>>> values = [1, 2, 3, 4, 5, 6]
>>> random.choice(values)
2
>>> random.choice(values)
3
>>> random.choice(values)
1
>>> random.choice(values)
4
>>> random.choice(values)
6
>>>
為了提取出N個不同元素的樣本用來做進(jìn)一步的操作,可以使用 random.sample() :
>>> random.sample(values, 2)
[6, 2]
>>> random.sample(values, 2)
[4, 3]
>>> random.sample(values, 3)
[4, 3, 1]
>>> random.sample(values, 3)
[5, 4, 1]
>>>
如果你僅僅只是想打亂序列中元素的順序,可以使用 random.shuffle() :
>>> random.shuffle(values)
>>> values
[2, 4, 6, 5, 3, 1]
>>> random.shuffle(values)
>>> values
[3, 5, 2, 1, 6, 4]
>>>
生成隨機(jī)整數(shù),請使用 random.randint() :
>>> random.randint(0,10)
2
>>> random.randint(0,10)
5
>>> random.randint(0,10)
0
>>> random.randint(0,10)
7
>>> random.randint(0,10)
10
>>> random.randint(0,10)
3
>>>
為了生成0到1范圍內(nèi)均勻分布的浮點數(shù),使用 random.random() :
>>> random.random()
0.9406677561675867
>>> random.random()
0.133129581343897
>>> random.random()
0.4144991136919316
>>>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
名稱欄目:Python常用數(shù)字處理基本操作匯總-創(chuàng)新互聯(lián)
文章鏈接:http://aaarwkj.com/article20/dshijo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、網(wǎng)站設(shè)計、App設(shè)計、網(wǎng)站制作、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容