Python學習 函式章節 作業

2021-10-05 16:54:53 字數 3936 閱讀 5263

4/8作業

1、 有兩個列表,[2,5,7,8,22,32], [2,5,6,18,32] 把不相同的部分做乙個列表並列印

答:

def

ass1

(list1, list2)

: set1 =

set(list1)

set2 =

set(list2)

list3 =

list

(set1 ^ set2)

return list3

list1 =[2

,5,7

,8,22

,32]list2 =[2

,5,6

,18,32

]print

(ass1(list1, list2)

)

[18,

6,7,

8,22]

process finished with exit code 0

2、 有兩個列表,[1,2,3,7], [2,3,4,5,6],合併成乙個列表並公升序排序

答:

def

ass2

(list1, list2)

: list1.extend(list2)

list1.sort(

)return list1

list1 =[1

,2,3

,7]list2 =[2

,3,4

,5,6

]print

(ass2(list1, list2)

)

[1,

2,2,

3,3,

4,5,

6,7]

process finished with exit code 0

3、 編寫乙個函式,完成功能,傳遞乙個列表,能輸出列表的最大值

答:

def

testlist

(testlist)

: list1 = testlist

a =max(list1)

return a

list2 =[1

,34,22

,0,90

]print

(testlist(list2)

)

90

process finished with exit code 0

4、 編寫乙個函式,完成功能,傳遞乙個列表,把列表首尾下標的值進行調換

答:

def

ass4

(list1)

: list1[0]

, list1[

len(list1)-1

]= list1[

len(list1)-1

], list1[0]

# return list1

list1 =[2

,3,4

,5,6

]print

(ass4(list1)

)

[6,

3,4,

5,2]

process finished with exit code 0

5、有好友列表[(『owen』, 『上海』), (『zero』, 『上海』), (『nick』, 『安徽』), (『jason』, 『安徽』), (『jerry』, 『江蘇』)],

計算每個地區好友的個數,如上列好友列表的結果:

答:

def

ass5

(list1)

: dict1 =

dict

(list1)

# print(dict1)

list2 =

list

(dict1.values())

# print(list2)

list3 =

list

(set

(list2)

) dict3 =

for i in

range(0

,len

(list3)):

dict2 =

dict((

(list3[i]

, list2.count(list3[i]))

,)) dict3.update(dict2)

print

(dict3)

list1 =[(

'owen'

,'上海'),

('zero'

,'上海'),

('nick'

,'安徽'),

('jason'

,'安徽'),

('jerry'

,'江蘇')]

ass5(list1)

process finished with exit code 0

6、編寫乙個函式求規定範圍內所有的水仙花數,如果使用者輸入的值是大於1000,則提示使用者只能輸入1000以內的數字

科普:水仙花表示三位數 abc = aaa + bbb + ccc

答:

def

ass7

(i):

i =int(i)

if100

<= i <

1000

:for j in

range

(100

, i+1)

:# 百位a,十位b,個位c

a, b, c = j //

100, j %

100//

10, j %

10if j == a**

3+ b**

3+ c**3:

print

('水仙花數:%d'

% j)

else

: j +=

1else

:print

('請輸入100-1000以內的數字'

)i =

input

('請輸入乙個三位數,我們將返回100到這個數之間的所有水仙花數\n'

)ass7(i)

請輸入乙個三位數,我們將返回100到這個數之間的所有水仙花數

999水仙花數:153

水仙花數:370

水仙花數:371

水仙花數:407

process finished with exit code 0

7、用迴圈巢狀的方式求 1!+ 2!+ … + 10!

答:

for i in

range(1

,11):

sum=

1 sum1 =

0for j in

range(1

, i+1)

:sum

*= j

sum1 +=

sum# print(sum1)

print

(sum1)

4037913

process finished with exit code 0

8、自定義乙個函式,用來生成字典資料

def

ass8

(*a,

**b)

:print

(a)print

(b)ass8(1,

2,3, a=

'1',b=

'2',c=

'3')

(1,

2,3)

process finished with exit code 0

python函式作業2

1.寫函式,檢查獲取傳入列表物件的所有奇數字索引對應的元素,並將其作為新列表返回 def func l return l 1 2 切片 列表 元祖 字串等序列類的物件 隔幾個 的取值,就用切片 print func 1,2,3,4,5 2,4 2.寫函式,判斷使用者傳入的物件 字串 列表 元祖 長度...

python函式作業1

1.寫函式,接收n個數字,求這些數字的和 函式名不定義為sum,避免與內建函式衝突 def sum func args total 0 for i in args total i return total print sum func 1,3,4,33,44,66 2.中列印出來的a,b,c分別是什...

Python學習0309作業

author lsj version v1.0 coding utf 8 作業 必做題 1.使用while迴圈輸出1 2 3 4 5 6 8 9 10 count 1 while count 10 if count 7 print 使用while迴圈輸出 format x count print c...