04-28作業(yè)day10

1.編寫函數(shù)桨吊,求1+2+3+…N的和


def yt_sum1(n):
    return sum(range(1, n+1)))
print(yt_sum1(n))

2.編寫一個函數(shù)挎塌,求多個數(shù)中的最大值

def max1(*num1):
    max2 = num1[0]
    for index in num1[1:]:
        if max2 < index:
            max2 = index
    return max2
print(max1(1, 2, 4, 7, 1))

3.編寫一個函數(shù)艘蹋,實現(xiàn)搖骰子的功能,打印N個骰子的點數(shù)和

import random
n = 2
print(random.randint(n, 6*n))

4.編寫一個函數(shù)外遇,交換指定字典的key和value注簿。
例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'}

dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {}
for key, value in dict1.items():
    key, value = value, key
    dict2.setdefault(key, value)
print(dict2)

5.編寫一個函數(shù),提取指定字符串中所有的字母跳仿,然后拼接在一起產(chǎn)生一個新的字符串
例如: 傳入'12a&bc12d-+' --> 'abcd'

str1 = '12a&bc12d-+'
str2 = ''
for index in str1:
    if 'a' <= index <= 'z' or 'A' <= index <= 'Z':
        str2 += index
print(str2)

6.寫一個函數(shù)诡渴,求多個數(shù)的平均值

num1 = 1, 2, 3, 4
sum1 = 0
for index in num1:
    sum1 += index
age = sum1 / len(num1)
print(age)

num1 = 1, 2, 3, 4, 5, 6, 7
print(sum(num1) / len(num1))

7.寫一個函數(shù),默認求10的階乘菲语,也可以求其他數(shù)字的階乘

def factorial(n=10):
    take1 = 1
    for x in range(1, n+1):
        take1 *= x
    print(take1)

8.寫一個自己的capitalize函數(shù)妄辩,能夠?qū)⒅付ㄗ址氖鬃帜缸兂纱髮懽帜?br> 例如: 'abc' -> 'Abc' '12asd' --> '12asd'

str1 = 'abc'
str2 = ''
if 'a' <= str1[0] <= 'z':
    str2 = chr(ord(str1[0]) - 32)
    str1 = str2 + str1[1:]
    print(str1)
else:
    print(str1)

9.寫一個自己的endswith函數(shù)惑灵,判斷一個字符串是否已指定的字符串結(jié)束
例如: 字符串1:'abc231ab' 字符串2:'ab' 函數(shù)結(jié)果為: True
字符串1:'abc231ab' 字符串2:'ab1' 函數(shù)結(jié)果為: False

def endswith(str1: str, str2: str):
    str1 = 'abc231ab'
    str2 = 'ab1'
    n1 = len(str2)
    return end = str1[-n1:]
if endswith('abc231ab' , 'ab'):
    print(True)
else:
    print(False)

10.寫一個自己的isdigit函數(shù),判斷一個字符串是否是純數(shù)字字符串
例如: '1234921' 結(jié)果: True
'23函數(shù)' 結(jié)果: False
'a2390' 結(jié)果: False

str1 = '1234921'
count1 = 0
for index in str1:
    if '0' <= index <= '9':
        count1 += 1
if count1 == len(str1):
    print(True)
else:
    print(False)

11.寫一個自己的upper函數(shù)眼耀,將一個字符串中所有的小寫字母變成大寫字母
例如: 'abH23好rp1' 結(jié)果: 'ABH23好RP1'

str1 = 'abH23好rp1'
str2 = ''
for n in range(len(str1)):
    if 'a' <= str1[n] <= 'z':
        str2 += chr(ord(str1[n]) - 32)
    else:
        str2 += str1[n]
print(str2)

12.寫一個自己的rjust函數(shù)英支,創(chuàng)建一個字符串的長度是指定長度,原字符串在新字符串中右對齊哮伟,剩下的部分用指定的字符填充
例如: 原字符:'abc' 寬度: 7 字符:'^' 結(jié)果: '^^^^abc'
原字符:'你好嗎' 寬度: 5 字符:'0' 結(jié)果: '00你好嗎'

def rjust(str1: str, str2: str, n: int):
    return str2 * (n-len(str1)) + str1
print(rjust('abc',  '^', 5))

13.寫一個自己的index函數(shù)干花,統(tǒng)計指定列表中指定元素的所有下標,如果列表中沒有指定元素返回-1
例如: 列表: [1, 2, 45, 'abc', 1, '你好', 1, 0] 元素: 1 結(jié)果: 0,4,6
列表: ['趙云', '郭嘉', '諸葛亮', '曹操', '趙云', '孫權(quán)'] 元素: '趙云' 結(jié)果: 0,4
列表: ['趙云', '郭嘉', '諸葛亮', '曹操', '趙云', '孫權(quán)'] 元素: '關(guān)羽' 結(jié)果: -1

def index(list1: list, list2: str):
    count1 = 0
    for x in range(len(list1)):
        if list1[x] == list2:
            count1 += 1
            indexs.append(x)
            return indexs
    if count1 == 0:
        return -1

list1 = [1, 2, 45, 'abc', 1, '你好', 1, 0]
print(index(list1, 1))

14.寫一個自己的len函數(shù)澈吨,統(tǒng)計指定序列中元素的個數(shù)
例如: 序列:[1, 3, 5, 6] 結(jié)果: 4
序列:(1, 34, 'a', 45, 'bbb') 結(jié)果: 5
序列:'hello w' 結(jié)果: 7

list1 = [1, 3, 5, 6]
count1 = 0
for x in list1[:]:
    count1 += 1
print(count1)

15.寫一個自己的max函數(shù)把敢,獲取指定序列中元素的最大值寄摆。如果序列是字典谅辣,取字典值的最大值
例如: 序列:[-7, -12, -1, -9] 結(jié)果: -1
序列:'abcdpzasdz' 結(jié)果: 'z'
序列:{'小明':90, '張三': 76, '路飛':30, '小花': 98} 結(jié)果: 98

list1 = [-7, -12, -1, -9]
if type(list1) == dict:
    max1 = 0
    for key in list1:
        if list1[key] > max1:
            list2 = list1[key]
    print(max1)
else:
    max1 = list1[0]
    for index in list1[1:]:
        if index > max1:
            max1 = index
    print(max1)

16.寫一個函數(shù)實現(xiàn)自己in操作,判斷指定序列中婶恼,指定的元素是否存在
例如: 序列: (12, 90, 'abc') 元素: '90' 結(jié)果: False
序列: [12, 90, 'abc'] 元素: 90 結(jié)果: True

list1 = (12, 90, 'abc')
list2 = '90'
for index in list1:
    if index == list2:
        print(True)
        break
else:
    print(False)

17.寫一個自己的replace函數(shù)桑阶,將指定字符串中指定的舊字符串轉(zhuǎn)換成指定的新字符串
例如: 原字符串: 'how are you? and you?' 舊字符串: 'you' 新字符串:'me' 結(jié)果: 'how are me? and me?'

str1 = 'how are you? and you?'
str2 = ''
print(str1.replace('you', 'me'))
for x in range(len(str1)):
    if str1[x:x+3] == 'you':
        str1 = str1[:x] + 'me' + str1[x+3:]
print(str1)

18.寫四個函數(shù),分別實現(xiàn)求兩個列表的交集勾邦、并集蚣录、差集、補集的功能

list1 = [-7, -12, -1, -9, 4]
list2 = [7, 12, -1, 9, 4]
list3 = []
# 交集
for index1 in list1:
    for index2 in list2:
        if index1 == index2:
            list3.append(index2)
print(list3)
# 并集
print(list(set(list(list1+list2))))
# 差集
list4 = list1
for index1 in list1:
    for index2 in list2:
        if index1 == index2:
            list4.remove(index2)
print(list4)

# 補集
list3 = list1 + list2
for index1 in list1:
    for index2 in list2:
        if index1 == index2:
            list3.remove(index2)
print(list3)

7.寫一個函數(shù)眷篇,實現(xiàn)學(xué)生的添加功能:

print('=====添加學(xué)生=====')
count1 = 1
str1 = '0'
list1 = []
name = input('輸入學(xué)生姓名:')
age = input('輸入學(xué)生年齡:')
tel = input('輸入學(xué)生年齡:')
print('===添加成功萎河!')
dict1 = {'name:': name, 'age:': age, 'tel:': tel, '學(xué)號:': '0001'}
print(dict1)
list1.append(dict1)
while True:
    print('1.繼續(xù)\n2.返回')
    opt1 = input('請選擇:')
    if opt1 == '1':
        print('=====添加學(xué)生=====')
        name = input('輸入學(xué)生姓名:')
        age = input('輸入學(xué)生年齡:')
        tel = input('輸入學(xué)生年齡:')
        count1 += 1
        c = str1*(4-len(str(count1)))+str(count1)
        dict1 = {'name:': name, 'age:': age, 'tel:': tel, '學(xué)號:': c}
        list1.append(dict1)
        print('===添加成功!')
        for item in list1:
            print(item)
    elif opt1 == '2':
        break
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蕉饼,一起剝皮案震驚了整個濱河市虐杯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌昧港,老刑警劉巖擎椰,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異创肥,居然都是意外死亡达舒,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進店門叹侄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來巩搏,“玉大人,你說我怎么就攤上這事趾代∷” “怎么了?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵稽坤,是天一觀的道長丈甸。 經(jīng)常有香客問我糯俗,道長,這世上最難降的妖魔是什么睦擂? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任得湘,我火速辦了婚禮,結(jié)果婚禮上顿仇,老公的妹妹穿的比我還像新娘淘正。我一直安慰自己,他們只是感情好臼闻,可當我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布鸿吆。 她就那樣靜靜地躺著,像睡著了一般述呐。 火紅的嫁衣襯著肌膚如雪惩淳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天乓搬,我揣著相機與錄音思犁,去河邊找鬼。 笑死进肯,一個胖子當著我的面吹牛激蹲,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播江掩,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼学辱,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了环形?” 一聲冷哼從身側(cè)響起策泣,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎斟赚,沒想到半個月后着降,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡拗军,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年任洞,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片发侵。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡交掏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刃鳄,到底是詐尸還是另有隱情盅弛,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站挪鹏,受9級特大地震影響见秽,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜讨盒,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一解取、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧返顺,春花似錦禀苦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至秉扑,卻和暖如春慧邮,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背邻储。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工赋咽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留旧噪,地道東北人吨娜。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像淘钟,于是被迫代替她去往敵國和親宦赠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 概要 64學(xué)時 3.5學(xué)分 章節(jié)安排 電子商務(wù)網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,208評論 0 3
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,383評論 0 5
  • 1. 編寫函數(shù)米母,求1+2+3+…N的和 2. 編寫一個函數(shù)勾扭,求多個數(shù)中的最大值 3. 編寫一個函數(shù),實現(xiàn)搖骰子的功...
    3981cff33903閱讀 224評論 0 0
  • 1.編寫函數(shù)铁瞒,求1+2+3+…N的和 2.編寫一個函數(shù)妙色,求多個數(shù)中的最大值 3.編寫一個函數(shù),實現(xiàn)搖骰子的功能慧耍,打...
    是喵啊閱讀 475評論 0 0
  • 1. 編寫函數(shù)身辨,求1 + 2 + 3 +…N的和 2. 編寫一個函數(shù),求多個數(shù)中的最大值 3. 編寫一個函數(shù)芍碧,實現(xiàn)...
    小逗比的奮斗史閱讀 207評論 0 0