python基础小白题4
題目031:請(qǐng)輸入星期幾的第一個(gè)字母來判斷一下是星期幾,如果第一個(gè)字母一樣,則繼續(xù)判斷第二個(gè)字母。
'''
def tm031():
? ? '''
? ? 【個(gè)人備注】:按照題意要求實(shí)現(xiàn)了就行
? ? '''
? ? week = ['monday','tuesday','wednesday','thursday','friday','saturday','sunday']
? ? inp = ''
? ? while 1:
? ? ? ? arr = []
? ? ? ? inp = inp+input('請(qǐng)輸入一個(gè)字母:')
? ? ? ? for day in week: ? ? ? ? ? ? ? ? ? ?# 挑出滿足輸入的星期
? ? ? ? ? ? if inp==day[:len(inp)]:
? ? ? ? ? ? ? ? arr.append(day)
? ? ? ? if len(arr)==1: ? ? ? ? ? ? ? ? ? ? # 只剩一個(gè),說明唯一,可以輸出結(jié)果
? ? ? ? ? ? print('以%s開頭的單詞是:%s'%(inp,arr[0]))
? ? ? ? ? ? inp=''
? ? ? ? elif len(arr)==0: ? ? ? ? ? ? ? ? ? # 一個(gè)都沒有說明輸錯(cuò)了,需要重新輸入
? ? ? ? ? ? print('沒有%s開頭的單詞'%inp)
? ? ? ? ? ? inp=''
?
?
'''
題目032:按相反的順序輸出列表的值。
'''
def tm032():
? ? '''
? ? 【個(gè)人備注】:之前已經(jīng)做過了
? ? '''
? ? # 方法一
? ? a = [1,2,3,4,5]
? ? print(a[::-1])
? ? # 方法二
? ? a = [1,2,3,4,5]
? ? a.reverse()
? ? print(a)
? ? # 方法三
? ? a = [1,2,3,4,5]
? ? a.sort(reverse=True)
? ? print(a)
?
?
'''
題目033:按逗號(hào)分隔列表。
'''
def tm033():
? ? '''
? ? 【個(gè)人備注】:一開始沒看懂題目項(xiàng)干啥,直接print(list)不就是逗號(hào)分隔么
? ? 實(shí)際上題目的意思是,合并列表項(xiàng),以逗號(hào)為間隔
? ? '''
? ? a = ['1','2','3','4','5']
? ? print(','.join(a))
?
?
'''
題目034:練習(xí)函數(shù)調(diào)用。
'''
def tm034():
? ? '''
? ? 【個(gè)人備注】:沒頭沒尾的一個(gè)題,之前的遞歸實(shí)際上就是函數(shù)的調(diào)用了。不寫了。
? ? '''
? ? pass
?
?
'''
題目035:文本顏色設(shè)置。
'''
def tm035():
? ? '''
? ? 【個(gè)人備注】:感覺不像是不是python的題。
? ? '''
? ? pass
?
?
'''
題目036:求100之內(nèi)的素?cái)?shù)。
'''
def tm036():
? ? '''
? ? 【個(gè)人備注】:素?cái)?shù)就是質(zhì)數(shù)
? ? '''
? ? arr = [2]
? ? for i in range(3,100):
? ? ? ? for j in arr:
? ? ? ? ? ? if i%j==0:
? ? ? ? ? ? ? ? break
? ? ? ? else:
? ? ? ? ? ? arr.append(i)
? ? print(arr)
?
?
'''
題目037:對(duì)10個(gè)數(shù)進(jìn)行排序。
'''
def tm037():
? ? '''
? ? 【個(gè)人備注】:實(shí)際上考察的是排序。揣測(cè)了一下題意,寫了兩種解法
? ? '''
? ? # 方法1,python解法
? ? a = [1,5,7,3,2,4,9,10,6,8]
? ? a.sort()
? ? print(a)
? ? # 方法2,常規(guī)解法
? ? a = [1,5,7,3,2,4,9,10,6,8]
? ? b = [a[0]]
? ? for num in a[1:]:
? ? ? ? for i in range(len(b)):
? ? ? ? ? ? if num<b[i]:
? ? ? ? ? ? ? ? b.insert(i,num)
? ? ? ? ? ? ? ? break
? ? ? ? else:
? ? ? ? ? ? b.append(num)
? ? print(b)
?
?
'''
題目038:求一個(gè)3*3矩陣主對(duì)角線元素之和。
'''
def tm038():
? ? '''
? ? 【個(gè)人備注】:思路比較簡(jiǎn)單,n*n的矩陣都可以用這個(gè)求解。
? ? '''
? ? a = [[1,2,3],[4,5,6],[7,8,9]]
? ? s = 0
? ? n = len(a)
? ? for i in range(n): # 左上到右下一條線
? ? ? ? s+=a[i][i]
? ? for i in range(n): # 右上到左下一條線
? ? ? ? s+=a[i][n-i-1]
? ? if n%2==1: ? ? ? ? # 如果是奇數(shù),刪掉重復(fù)計(jì)算的中間點(diǎn)
? ? ? ? s-=a[n//2][n//2]
? ? print(s)
?
?
'''
題目039:有一個(gè)已經(jīng)排好序的數(shù)組。現(xiàn)輸入一個(gè)數(shù),要求按原來的規(guī)律將它插入數(shù)組中。
'''
def tm039():
? ? '''
? ? 【個(gè)人備注】:037題中剛寫過。
? ? '''
? ? aaa = [1,5,8,14,28,39,60,89,134,324,612,900]
? ? b = 555
? ? for a in aaa:
? ? ? ? if b<a:
? ? ? ? ? ? aaa.insert(aaa.index(a),b)
? ? ? ? ? ? break
? ? else:
? ? ? ? aaa.append(b)
? ? print(aaa)
?
?
'''
題目040:將一個(gè)數(shù)組逆序輸出。
'''
def tm040():
? ? '''
? ? 【個(gè)人備注】:就是032題,重復(fù)了。
? ? '''
? ? pass
總結(jié)
以上是生活随笔為你收集整理的python基础小白题4的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode461. 汉明距离
- 下一篇: python学习实例(2)