- 學習測試開發的Day79,真棒!
- 學習時間為1H05M
- 第八次全天課(上午視頻40M-1H20M)
練習3:生成隨機的字母和數字,需要類似格式:字母數字字母數字字母數字,生成長度為10的字符串
自己的
代碼
import random
result1=[]
for i in range(1,11):
if i%2==0:
result1.append(random.randint(0,9))
else:
result1.append(chr(random.randint(65,90)))
s=""
for i in result1:
s+=str(i)
print(s)
輸出結果
PS D:\0grory\day8> python .\randomtest.py
D9Y4M0E5W1
PS D:\0grory\day8>
老師
輸入---->存儲----->計算(存儲)--->輸出
方法1代碼:
import random
result=""
for i in range(5):
result+=chr(random.randint(97,122))+str(random.randint(0,9))
print(result)
輸出結果:
PS D:\0grory\day8> python .\randomtest.py
s2n3f0s6i1
PS D:\0grory\day8>
方法2:
import random
result=""
for i in range(1,11):
if i%2==0:
result+=str(random.randint(0,9))
else:
result+=chr(random.randint(97,122))
print(result)
輸出結果
PS D:\0grory\day8> python .\randomtest.py
j8a4d4i9w4
PS D:\0grory\day8>
方法三代碼:
import random
import string
result=""
for i in range(5):
result+=string.ascii_letters[random.randint(0,52)]+string.digits[random.randint(0,9)]
print(result)
結果:
PS D:\0grory\day8> python .\randomtest.py
k6t2B4V1a0
PS D:\0grory\day8>
練習4:生成隨機的字母和數字,需要類似格式:用函數實現且生成的字符串長度,可以通過函數參數來指定
自己的代碼:
import random
import string
def myrandom(num):
result=""
for i in range(num):
result+=string.ascii_letters[random.randint(0,52)]+string.digits[random.randint(0,9)]
return result
num=int(input("請輸入你想生成的字符串長度:"))
print(myrandom(num))
輸出:
請輸入你想生成的字符串長度:9
t8Q6L9C8a3A6w2M9d8
老師建議-且字母為指定范圍內:
import random
import string
def gen_random_str(length,a,b):
result=""
if not (isinstance(length,int) and (isinstance(a,int) and (isinstance(b,int)))and length>0 and a>=97 and a<=122):
return ""
for i in range(1,length+1):
if i%2==0:
result+=str(random.randint(0,9))
else:
result+=chr(random.randint(97,122))
return result
length=int(input("請輸入你想生成的字符串長度:"))
print(gen_random_str(length,97,100))
結果:
PS D:\0grory\day8> python .\randomtest.py
請輸入你想生成的字符串長度:10
a7w4r4o8r1
練習5:統計一句話的單詞數量
例如: I am a 18 years old boy ! Do you believe , do you?
提示:
1.想辦法把標點和數字給過濾掉(用列表,用新的字符串進行拼接)
2.split
3.len(長度)
自己的:
代碼
import string
print(string.ascii_letters)
s="I am a 18 years old boy ! Do you believe , do you?"
s2=""
for i in s:
if (i>='a' and i<='z') or (i>='A' and i<='Z'):
s2+=i
elif i==" ":
s2+=i
else:
i=""
print(s2)
s3=s2.split()
print(len(s3))
輸出結果:
PS D:\0grory\day8> python .\word_num.py
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
I am a years old boy Do you believe do you
11
PS D:\0grory\day8>