Day19 练习题
1.列舉布爾值為False的值
0,[],{},(),False,’’,None
列如:
if 0:
2.寫函數:
根據范圍獲取其中被3和7整除的所有數的和,符合條件的數字個數以及符合條件的數字的總和
3.函數傳遞參數時,是否用的同一內存地址
name = “hairui”
def show():
?? ? print(id(name))
print(id(name))
show()
?
4.三元運算
變量 = 值一 if 條件一 else 值二
?
5.定義函數統計一個字符串中大寫字母,小寫字母,數字的個數,并以字典為結果返回給調用函數·
用id進行判斷
6.將字符串’xyy’轉換成UTF-8編碼的字節類型
s='xyy'
print(type(s))
a=bytes(s,'utf8')
s.encode('utf8')
a=b'hello'
7.
def fuc(x,z,y=5):
? ? print(x,y,z)
fuc(1,3,4)#默認參數y=5,對應y的位置參數可有也可無,有的時候取y的位置參數,無的時候取y的默認參數
?
def fuc(x,*z,**y):
? ? print(x,y,z)
fuc(1,3,4)
?
def fuc(x,*y,**z):#*y表示可以接受0至n個參數,若此次是y會報錯
? ? print(x, y, z)
fuc(1,name=3,age=4)
?
def fuc(*y,**z):
? ? print(y,z)
fuc(*[1,2,3,4,5])
?
def fuc(*y,**z):
? ? print(y,z)
fuc(*[1,2,3,4,5],**{'name':'xyy','age':'16'})
?
b="age%d%s"%(12,"歲")
print(b)
?
def func(a1):
? ? return a1+100
func = lambda a1:a1+200
ret = func(10)
print(ret)
?
8.進制轉換
int(),bin(),oct(),hex()
十進制轉二進制 bin(18)--> '0b10010'? ? ?去掉0b就是10010? ? 即為十進制18轉二進制是10010?
十進制轉八進制oct(18) -->'022'? 去掉0 就是22? 即為十進制18轉八進制是22
十進制轉十六進制hex(18) -->'0x12'? 去掉0x 就是12? 即為十進制18轉八進制是12
?
9.利用內置函數zip(),join(),已知l1=["我",22,33,4,4],l2=["愛",22,55,6,7],l3=["學",22,33,44,5],l4=["python",22,33,4,5] 獲取字符串s = '我_愛_學_python'
l5="_".join(list(zip(l1,l2,l3,l4))[0])#join把一個可迭代對象轉換成字符串
print(l5)#join的功能屬于“_”的這個字符串
?
10.NAMELIST = ["alex","eric"]
def func():
? ? global NAMELIST
? ? NAMELIST =123
func()
print(NAMELIST)
輸出結果為:123
?
11.
name = 'name1'
def outer(func):
? ? name = 'name2'
? ? func()#函數名作為參數,實質是show
? ? return func #返回func的內存地址
def show():
? ? print(name)
outer(show)
?
12.8!
第一種:
def f(n):
? ? if n==1:
? ? ? ? return 1
? ? return n*f(n-1)
f(8)
第二種:
from functools import reduce
print(reduce(lambda x,y:x*y,[x for x in range(1,9)]))
?
轉載于:https://www.cnblogs.com/xuwinwin/p/11327704.html
總結
- 上一篇: 天文学中常用的坐标系
- 下一篇: 方舟代码