Python入門練習題(5) 隨機數生成器

2021-08-22 16:39:30 字數 1440 閱讀 2080

設計乙個函式,生成一段由大小寫英文本母(a-z , a-z)和阿拉伯數字(0-9)組成的隨機字串。 如:

隨機字串中,整體長度可以自己指定,但數字、大寫字母、小寫字母的長度和排列順序要求是隨機的。

下面的程式展現的時兩種思想。

import random

# 方法一

defrandom_albt

(count):

length = 0

while length < count:

select = random.choice(range(1, 4))

if select == 1:

a = random.choice(range(1, 10))

print(a, end="")

if select == 2:

b = random.choice(range(65, 90))

print(chr(b), end="")

if select == 3:

c = random.choice(range(97, 122))

print(chr(c), end="")

length += 1

# 方法二

defrandom_albt2

(count):

s = list(map(lambda x: str(x), range(10))) + \

list(map(lambda x: chr(x), range(65, 90))) + \

list(map(lambda x: chr(x), range(97, 122)))

string =

while count > 0:

current_len = random.randint(0, count)

string += random.sample(s, current_len)

count -= current_len

return

"".join(string)

count = int(input("please input the length you want:"))

#random_albt(count)

print(random_albt2(count))

其中,random.sample()可以從指定的序列中,隨機的擷取指定長度的片斷,不作原地修改。

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 從list中隨機獲取5個元素,作為乙個片斷返回

slice = random.sample(list, 5)

print slice

# 原有序列並沒有改變。

print

list

2018.8.11

python入門練習題

1.使用者鍵盤輸入一年份,判斷是否為閏年?如果是閏年,則輸出 是閏年 如果不是閏年,則輸出 不是閏年 判斷閏年的方法 1 能被4整除但不能被100整除 2 能被400整除 2.for迴圈巢狀 列印9 9乘法表 3.輸入兩個數,求這兩個數的最大公約數和最小公倍數 1.企業發放的獎金根據利潤提成。利潤 ...

python入門練習題2

1.利用遞迴方法求5!def tang j sum value 0 if j 0 sum value 1 else sum value j tang j 1 return sum valuefor i in range 10 print d d i,tang i 利用遞迴函式呼叫方式,將所輸入的5個...

練習題 Python語法入門

直接用 0 和 1 構成的指令去編寫程式,即用計算機能夠直接理解的二進位制指令編寫程式,計算機可以無障礙理解。優點 執行效率最高 缺點 開發效率最低用英文標籤取代二進位制去編寫程式。優點 執行效率高 缺點 開發效率低用人的語言區寫程式,計算機無法直接理解,需要翻譯,按照翻譯方式的不同分為兩種 編譯型...