random()函式

用於隨機產生數字字串或隨機選擇某範圍的函式

import random
import string

print(random.randint(1, 10))
#隨機產生1~10的數字

print(random.random())
#產生0~1之間隨機的浮點數

print(random.uniform(1.6, 8.8))
#產生1.6~8.8之間隨機的浮點數

list1 = ["say", "my", "name", 3, 6, 9]
range1 = range(5, 100)
dict1 = {
    "say" : "0",
    "my" : "1",
    "name" : "2",
    "what" : "how"
}
print(random.choice(list1))
print(random.choice(range1))
print(random.choice(["剪刀", "石頭", "布"]))
print(random.choice(list(dict1.items())))
print(random.choice(list(dict1.keys())))
print(random.choice(list(dict1.values())))
#從項目中隨機選出一個元素

print(random.sample("qwejnegopwoemrionr", 5))
#從字串中隨機選語個字元

print(random.sample(string.ascii_letters + string.digits, 12))
#使用random模組加string隨機產生字母(大小寫)和數字
list2 = random.sample(string.ascii_letters + string.digits,10)
str1 = "".join(list2)
print(str1)
#把產生出來亂數字點檔加入到字串裡

print(random.choices(list2))
#用choices選擇會用字典包起來。

random.choices() 解說

a = 0
#apple出現的機率
b = 0
#banana出現的機率
k = 0
#kiwi出現的機率
sum = 100
#總數

list1 = ["apple", "banana", "kiwi"]
list2 = random.choices(list1, weights=[8, 1, 1], k=sum)
#weight為比重的分配(出現的比值),k是總長度
print(list2)

for a1 in list2:
    if a1 == "apple":
        a = a + 1
    elif a1 == "banana":
        b = b + 1
    elif a1 == "kiwi":
        k = b + 1
print("總數為{:d},apple出現的機率為{:.2f}%".format(sum, (a / sum)*100))
print("總數為{:d},banana出現的機率為{:.2f}%".format(sum, (b / sum)*100))
print("總數為{:d},kiwi出現的機率為{:.2f}%".format(sum, (k / sum)*100))

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *