設計乙個函式,生成一段由大小寫英文本母(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 構成的指令去編寫程式,即用計算機能夠直接理解的二進位制指令編寫程式,計算機可以無障礙理解。優點 執行效率最高 缺點 開發效率最低用英文標籤取代二進位制去編寫程式。優點 執行效率高 缺點 開發效率低用人的語言區寫程式,計算機無法直接理解,需要翻譯,按照翻譯方式的不同分為兩種 編譯型...