Python的Random函式和格式化字串

2021-10-07 05:34:05 字數 4788 閱讀 2499

二、格式化%s

三、格式化format

random.random隨機生成乙個0到1之間的浮點數

0<=n<=1

>>

> random.random(

)0.7086588033796296

random.uniform(a,b)生成乙個a到b內的隨機浮點數

若ab,則b <= n <= a

>>

> random.uniform(12,

5)6.128208009182529

>>

>> random.uniform(5,

12)5.373996230739382

>>

>> random.uniform(5,

5)5.0

random.randint(a,b)用於生成乙個指定範圍內的整數:a<=n<=b;

下限必須小於等於上限值

>>

> random.randint(10,

10)>

10>>

>> random.randint(10,

21)>

15>>

>> random.randint(

100,

100)

>

10

random.randrange([start],[stop],[step])從指定範圍內,按指定步長遞增的集合中獲取乙個隨機數。等於random.choice(range([start],[stop],[step]))

>>

> random.randrange(1,

100,10)

>

61>>

>> random.randrange(1,

100,10)

>

21>>

>> random.choice(

range(1

,100,10

))>

71>>

>> random.choice(

range(1

,100,10

))>

41

1.random.choice(seq)從序列中獲取隨機乙個元素。

(population, weights=none, *, cum_weights=none, k=1)這個方法平時比較少用。

population是乙個可迭代物件,weights是相對權重,cum_weights是絕對權重,k表示隨機獲取的個數

需要注意2點:

weights和cum_weights不能同時使用。

population與weights,population與cum_weights需一一對應

>>

>

for i in

range(10

):print

(random.choices(

"abcd"

,weights=[1

,1,7

,1],k=1)

)['b']

['c'][

'c']

['c'][

'c']

['c'][

'a']

['a'][

'c']

['c'

]

2.random.shuffle

random.shuffle(x[, random])用於將乙個列表中的元素打亂,類似洗牌的效果

>>

> l=

['a'

,'b'

,'c'

,'d'

,'e'

]>>

> random.shuffle(l)

>>

> l

['d'

,'b'

,'e'

,'c'

,'a'

]

3.random.sample

random.sample(seq,k)從指定序列中隨機獲取指定長度的,且不重複出現的片段

>>

> l=

['a'

,'b'

,'c'

,'d'

,'e'

]>>

> s=random.sample(l,2)

#隨機獲取長度為2的片段

>>

> s

['c'

,'a'

]>>

> l

['a'

,'b'

,'c'

,'d'

,'e'

]

1.以把%想象成:圖書館裡用來佔位的一本書。先佔乙個位置,之後再填上實際的變數。

print

('血量:'

+str

(life)

+'攻擊:'

+str

(attack)

)print

('血量:%s 攻擊:%s'

%(life,attack)

)

print

('專案大小為%.1f個標準專案,使用%d個人力完成,則需要工時數量為:%.1f個'

%(size,number,time)

)

print

('我的幸運數字是%d'

% lucky)

print

('我的幸運數字是%s'

%'小龍女的生日816'

)print

('我的幸運數字是%d和%d'%(

8,16)

它通過{}和:來代替%。

「對映」示例

字串的format函式可以接受不限個引數,位置可以不按順序,可以不用或者用多次

print

(','

.format

('kzc',18

))'kzc,18'

print

('{}{}'

.format

('kzc',18

))'kzc,18'

print

(',,'

.format

('kzc',18

))#可以用多次,且不按順序

'18,kzc,18'

print

(','

.format

(age=

18,name=

'kzc'))

'kzc,18'

class

person

:def

__init__

(self,name,age)

:

self.name,self.age = name,age

def__str__

(self)

:return

'this guy is ,is old'

.format

(self=self)

str(person(

'kfc'

,'18'

)'this guy is kzc,is 18 old'

p=

['kfc',18

]print

('中帶:號),比如:

填充常跟對齊一起使用

^、<、>分別是居中、左對齊、右對齊,後面帶寬度

:號後面帶填充的字元,只能是乙個字元,不指定的話預設是用空格填充

比如print

('.format('

189')

#8表示寬度為8

' 189'

print(.

format

('189'

)#0表示用0填充

'000189'

print(.

format

('189'

)#用a填充

'aaa189'

精度常跟型別f一起使用

'.format(321.33345)'

#2表示精度為2

'323.33'

主要就是進製了,b、d、o、x分別是二進位制、十進位制、八進位制、十六進製制。

print(''

.format(17

))'10001'

print(''

.format(17

))'17'

print(''

.format(17

))'21'

print(''

.format(17

))'11'

-用,號還能用來做金額的千位分隔符

print(''

.format

(12345677))

'12,

345,

677

Python中的Random函式

python中的random模組用於生成隨機數。下面介紹一下random模組中最常用的幾個函式。random.random 用於生成乙個0到1的隨機符點數 0 n 1.0 random.uniform的函式原型為 random.uniform a,b 用於生成乙個指定範圍內的隨機符點數,兩個引數其中...

Python 中的random函式

python中的random模組用於生成隨機數。下面介紹一下random模組中最常用的幾個函式。random.random 用於生成乙個0到1的隨機符點數 0 n 1.0 random.uniform的函式原型為 random.uniform a,b 用於生成乙個指定範圍內的隨機符點數,兩個引數其中...

Python 中的 random函式

一 概念 random函式 乙個生成隨機數值的函式,random 方法返回隨機生成的乙個實數,它在 0,1 範圍內。二 使用random函式過程 1 1 匯入random函式23 import random4 生成第乙個隨機數56 print random random.random 78 生成第二...