#第一題:輸入乙個字串,將該字串中下標為偶數的字元組成新串並通過字元格式化方式顯示
str1 = input('請輸入乙個字串:')
str2 = ''
for i in range(len(str1)):
if i%2==0:
str2 += str1[i]
print('{}'.format(str2))
#第二題:編寫程式,生成乙個由15個不重複的大小寫字母組成的列表
# ascii_lowercase = 'abcdefghijklmnopqrstuvwxyz'
# ascii_uppercase = 'abcdefghijklmnopqrstuvwxyz'
# ascii_letters = ascii_lowercase + ascii_uppercase
import string,random
a = random.sample(string.ascii_letters,15) #samle 抓取後不放回
print(a)
#第三題:給定字串'site sea suede sweet see kase sse ssee loses',匹配出所有以s開頭以e結尾的單詞
# 方法一:
import re
str1 = 'site sea suede sweet see kase sse ssee loses'
print(re.findall(r'\bs\s*?e\b',str1))
#\s匹配非空白 \b是正規表示式規定的乙個特殊**,代表著單詞的開頭或結尾,也就是單詞的分界處。雖然通常英文的單詞是由空格,標點符號或者換行來分隔的,但是\b並不匹配這些單詞分隔字元中的任何乙個,它只匹配乙個位置
#方法二:
str1 = 'site sea suede sweet see kase sse ssee loses'
for i in str1.split(' '):
if i.startswith('s') and i.endswith('e'):
print(i)
#第四題;生成15個包括10字元的隨機密碼,密碼中的字元只能由大小寫字母、數字和特殊字元'@''$''#''&''_''~'構成
import string,random
s = '@$#&_~'
for i in range(15):
s1 = ''
for j in range(10):
s1 += random.choice(string.ascii_letters + string.digits + s) #choice抓取後放回
print(s1,end=' ')
#第五題:給定列表x = ['13915556234','13025621456','15325645124','15202362459'],檢查列表中的元素是否為移動手機號
#\d 匹配數字 \b 匹配單詞的開始或結束
import re
x = ['13915556234','13025621456','15325645124','15202362459']
for i in x:
a = re.findall(r'\b13[4-9]\d\b|\b15[01289]\d\b',i)
if a:
print(a)
第五章課後練習題
1.利用迴圈結構解決問題的一般步驟?答.分析需求確定迴圈條件,確定迴圈體,然後巢狀各種 就ok了。2.使用while迴圈結構輸出 100 95 90 85 5。實現程式設計。設定斷點除錯程式,觀察迴圈變數的變化。3.使用do while迴圈實現 計算1 50中是7的倍數的數值之和並輸出。4.從鍵盤接...
第五章習題
一 填空題 1 c 的兩種聯編方式為 靜態 聯編和 動態 聯編。2 c 支援兩種多型性,靜態聯編所支援的多型性被稱為 編譯時的多型性 動態聯編所支援的多型性被稱為 執行時的多型性 3 過載函式在編譯時表現出多型性,就是 靜態 聯編 而虛函式則在執行時表現出多型性是 動態 聯編。4 為了區分過載函式,...
c primer 第五版課後習題 第五章
第五章主要講了函式 include include include include using namespace std void test 5 9 std cout 母音字母個數為 t cnt endl void test 5 10 std cout 母音字母a的個數為 t cnt a endl...