python之道03
1.有變量name = " aleX leNb " 完成如下操作:
- 移除 name 變量對應的值兩邊的空格,并輸出處理結果
答案:
name = " aleX leNb " name1 = name.strip() print(name1)''' 輸出結果aleX leNb '''- 將 name變量對應的值中所有的空格去除掉,并輸出處理結果
答案:
name = " aleX leNb " name1 = name.replace(' ','') print(name1)''' 輸出結果 aleXleNb ''' # 個人見解 # 這里的知識點用的是替換,strip只能去除字符兩遍的空格- 判斷 name 變量是否以 "al" 開頭,并輸出結果(用兩種方式 切片+字符串方法)
答案:
# 方式一: name = " aleX leNb " name1 = name.startswith('al') print(name1)''' 輸出結果 False '''# 方式二: name = " aleX leNb " name1 = name[2] if name1 == 'al':print(True) else:print(False) ''' 輸出結果 False '''- 判斷name變量是否以"Nb"結尾,并輸出結果(用兩種方式 切片+字符串方法)
答案:
# 方式一: name = " aleX leNb " name1 = name.endswith('Nb') print(name1) '''輸出結果False '''# 方式二: name = " aleX leNb " name1 = name[-2:] if name1 == 'Nb':print(True) else:print(False) '''輸出結果False '''- 將 name 變量對應的值中的 所有的"l" 替換為 "p",并輸出結果
答案:
name = " aleX leNb " name1 = name.replace('l','p') print(name1) '''輸出結果apeX peNb '''- 將name變量對應的值中的第一個"l"替換成"p",并輸出結果
答案:
name = " aleX leNb " name1 = name.replace('l','p',1) print(name1) '''輸出結果apeX leNb '''- 將 name 變量對應的值根據 "l" 分割,并輸出結果
答案:
name = " aleX leNb " name1 = name.split('l') print(name1) '''輸出結果[' a', 'eX ', 'eNb '] '''- 將 name 變量對應的值全部變大寫,并輸出結果
答案:
name = " aleX leNb " name1 = name.upper() print(name1) ''' # 輸出結果 # ALEX LENB '''- 將 name 變量對應的值全部變小寫,并輸出結果
答案:
name = " aleX leNb " name1 = name.lower() print(name1) ''' # 輸出結果 # alex lenb '''疑問: 對應值是否包含空格?個人以為包括
- 請輸出 name 變量對應的值的第 2 個字符?
答案:
name = " aleX leNb " name1 = name[1] print(name1) ''' # 輸出結果 # a '''- 請輸出 name 變量對應的值的前 3 個字符?
答案:
name = " aleX leNb " name1 = name[:3] print(name1) ''' # 輸出結果 # al '''- 請輸出 name 變量對應的值的后 2 個字符?
答案:
name = " aleX leNb " name1 = name[-2:-1] # name[-2:] print(name1) ''' # 輸出結果 # b '''2.有字符串s = "123a4b5c"
- 通過對s切片形成新的字符串 "123"
答案:
s = "123a4b5c" s1 = s[:3] print(s1) ''' # 輸出結果 # 123 '''- 通過對s切片形成新的字符串 "a4b"
答案:
s = "123a4b5c" s2 = s[3:6] print(s3) ''' # 輸出結果 # a4b '''- 通過對s切片形成字符串s5,s5 = "c"
答案:
s = "123a4b5c" s5 = s[-1] print(s5) ''' # 輸出結果 # c '''- 通過對s切片形成字符串s6,s6 = "2ab"
答案:
s = "123a4b5c" s6 = s[1:6:2] #或者s[1:-2:2] print(s6) ''' # 輸出結果 # 2ab '''- 通過對s切片形成字符串s6,s6 = "cba"
答案:
s = "123a4b5c" s6 = s[:2:-2] #s[-1:2:-2] print(s6) ''' # 輸出結果 # cba '''3.使用while循環字符串 s="你好世界" 中每個元素。
答案:
s="你好世界" count = 0 while count < len(s):print(s[count])count += 1 '''輸出結果你好世界 '''# 默寫少了count += 1 # for循環 for i in s:print(i)4.使用while循環對s="321"進行循環,打印的內容依次是:"倒計時3秒","倒計時2秒","倒計時1秒","出發!"(提示使用字符串方法中的格式化)
答案:
# 方式一: s="321" count = 0 while count < len(s):s1 = s[count]print(f'倒計時{s1}秒')count += 1if count == 1: # 其實這樣寫沒有意義pass print('出發') ''' 輸出結果 倒計時3秒 倒計時2秒 倒計時1秒 出發 '''# 方式二:升級版s="321" count = 0 while count < len(s):s1 = s[count]print(f'倒計時{s1}秒')count += 1 print('出發') ''' 輸出結果 倒計時3秒 倒計時2秒 倒計時1秒 出發 '''# 方式三: format版本 s="321" count = 0 while count < len(s):s1 = s[count]print('倒計時{}秒'.format(s[count]))count += 1 print('出發') ''' 輸出結果 倒計時3秒 倒計時2秒 倒計時1秒 出發 '''5.使用for循環對s="321"進行循環,打印的內容依次是:"倒計時3秒","倒計時2秒","倒計時1秒","出發!"(提示使用字符串方法中的格式化)
答案:
s="321" for i in s:print(f'倒計時{i}秒') print('出發') ''' 輸出結果 倒計時3秒 倒計時2秒 倒計時1秒 出發 '''6.實現一個整數加法計算器(兩個數相加):
如:content = input("請輸入內容:") 用戶輸入:5+9或5+ 9或5 + 9(含空白),然后進行分割轉換最終進行整數的計算得到結果。(列表也支持索引)
答案:
# 方式一:超級low版本(不滿足要求) a = int(input('請輸入一個數: ')) b = int(input('請輸入第二個數: ')) print(a + b)''' # 輸出結果 # 請輸入一個數: 12 # 請輸入第二個數: 12 # 24 '''# 方式二:滿足題意版本 content = input('請輸入: ').strip() a = content.split("+") print(int(a[0])+int(a[1])) # 輸出結果 請輸入: 12 + 20 32# 方式三:老師的版本 content = input('請輸入: ').strip() new_str = conten.replace(' ','') li = new_str.split('+') print(int(a[0])+int(a[1])) ''' # 輸出結果 請輸入: 12 + 20 32 '''7.計算用戶輸入的內容中有幾個 s 字符?
如:content = input("請輸入內容:") # 如abcassfsqfsafqsdzacsad
答案:
a = input('請輸入內容: ') a1 = a.count('s') print(a1) ''' 輸出結果 請輸入字母: ssljd 2 '''8.使用while循環分別正向和反向對字符串 message = "傷情最是晚涼天,憔悴廝人不堪言。" 進行打印。
答案:
# 正向打印: message = "傷情最是晚涼天,憔悴廝人不堪言。" count = 0 while count < len(message):print(message[count],end = '') # end知識點,默認是end是'\n換行'count += 1 ''' 輸出結果: 傷情最是晚涼天,憔悴廝人不堪言。 '''# 反向打印: message = "傷情最是晚涼天,憔悴廝人不堪言。" count = 0 while count < len(message):print(message[::-1][count],end = '')count += 1''' 輸出結果: 。言堪不人廝悴憔,天涼晚是最情傷 '''9.獲取用戶輸入的內容,并計算前四位"a"出現幾次,并輸出結果。
答案:
content = input('請輸入內容: ') a = content[:3].count('a') print(a) ''' # 輸出結果 請輸入內容: aadfa 2 '''10.制作趣味模板程序需求:等待?戶輸?名字、地點、愛好,根據?戶的名字和愛好進?任意現實 如:敬愛可親的xxx,最喜歡在xxx地??xxx (字符串格式化)
答案:
# 方式一: name = input('請輸入名字:') place = input('請輸入地點:') hobby = input('請輸入愛好:') print(f'敬愛可親的{name},最喜歡在{place}的地方喜歡{hobby}')# 方式二,1行版本: print(f"敬愛可親的{input('請輸入名字:')},最喜歡在{input('請輸入地點:')}的地方喜歡{input('請輸入愛好:')}")11.判斷?句話是否是回?. 回?: 正著念和反著念是?樣的. 例如, 上海?來?來?海上
答案:
while 1:content = input('請輸入:')if content[::-1] == content:print('是回文')else:print('不是回文') ''' 輸出結果 請輸入:123321 是回文 請輸入:123456 不是回文 請輸入:山西運煤車煤運西山 是回文 '''12.輸??個字符串,要求判斷在這個字符串中?寫字?,?寫字?,數字,其他各出現了多少次,并輸出出來
答案:
content = input('請輸入:').strip() u_upper = 0 l_lower = 0 d_digit = 0 other = 0 for i in content:if i.isupper():u_upper += 1elif i.islower():l_lower += 1elif i.isdigit():d_digit += 1else:other += 1 print(f'在這個字符串中大寫字母出現{u_upper}次,小寫字母出現{u_lower}次,數字出現{d_digit}次,其他出現{other}次.')''' 輸出結果 請輸入:aBcD12! 在這個字符串中大寫字母出現2次,小寫字母出現2次,數字出現2次,其他出現1次. '''13.用戶可持續輸入(用while循環),用戶使用的情況:
輸入A,則顯示走大路回家,然后在讓用戶進一步選擇:
是選擇公交車,還是步行?
選擇公交車,顯示10分鐘到家,并退出整個程序。
選擇步行,顯示20分鐘到家,并退出整個程序。
輸入B,則顯示走小路回家,并退出整個程序。
輸入C,則顯示繞道回家,然后在讓用戶進一步選擇:
是選擇游戲廳玩會,還是網吧?
選擇游戲廳,則顯示 ‘一個半小時到家,爸爸在家,拿棍等你。’并讓其重新輸入A,B,C選項。
選擇網吧,則顯示‘兩個小時到家,媽媽已做好了戰斗準備。’并讓其重新輸入A,B,C選項。
答案:
while 1:print('''A: 走大路回家(可以選擇公交或步行)B: 走小路回家C: 繞道回家(可以選擇游戲廳或網吧)''')content = input('請輸入A/B/C(不區分大小寫):').strip()if content.upper() == 'A':print('走大路回家')choise = input('公交車or步行?')if choise == '公交車':print('10分鐘到家')breakelif choise == '步行': # 這里不能用else,要不然輸入其他內容也打印如下print('20分鐘到家')breakelif content.upper() == 'B':print('走小路回家')breakelif content.upper() == 'C':print('繞道回家')choise1 = input('游戲廳玩會兒or網吧')if choise1 == '游戲廳玩會兒':print('一個半小時到家,爸爸在家,拿棍等你')else:print('兩個小時到家,媽媽已做好了戰斗準備')轉載于:https://www.cnblogs.com/zanao/p/10982385.html
總結
以上是生活随笔為你收集整理的python之道03的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AWVS教程
- 下一篇: websocket python爬虫_p