测试你的Python 水平----6
為什么80%的碼農都做不了架構師?>>> ??
1、問:簡述python中unicode和utf-8的關系?常用的函數有哪些?
答:unicode是一個字符編碼集合,定義每個字符的唯一編碼;utf-8則是unicode的一種實現,采用可變長編碼來存儲字符;常用的函數:
1) decode:實現從其他編碼到unicode編碼的轉換
2) encode:實現從unicode到其他編碼的轉換
2、 代碼段如下:
from functools import partial
def mul(x,base):return x*base
mul10=partial(mul,base=10)
mul100=partial(mul,100)
問:以下四個語句是否會出錯?如果不出錯,輸出是什么?
1)print mul10(50)
2)print mul10(50,base=100)
3)print mul100(50)
4)print mul100(50,base=100)
答:
1) 500
2)5000
3)5000
4)報TypeError錯誤,傳入多值
3、 問:簡述python多重繼承中方法解釋順序(Method Resolution Order)?
答:
1)經典類:深度優先,從左到右
2) 新式類:廣度優先,從左到右
4、 問:列表:A=[1,2,2,2,2,7,6,3,2,6,8,3,4,4,4,3,2,9,124,456,124,96,78,2,3,4,6,6,8,5],請找出A中的重復的數字。
答:
A=A=[1,2,2,2,2,7,6,3,2,6,8,3,4,4,4,3,2,9,124,456,124,96,78,2,3,4,6,6,8,5]
setA=set(A)
for item in setA:
? ?if A.count(item) >1:
? ? ? ?print item,
5、寫一段程序要求把一個文本中大于80個字符的文本行從最接近80個字符的單詞斷行,把剩余的文本插入到下一行,程序結束后,該文本中所有的行的字符數皆少于80個。
fpout=open('test.txt','r')
fpin=open('test1.txt','w')
for line in fpout:
? ?if len(line)>80:
? ? ? ?for i in range(80,0,-1):
#查找最接近80的字符單詞
? ? ? ? ? ?if line[i]==' ':
? ? ? ? ? ? ? ?break
? ? ? ?#截取
? ? ? ?fpin.write(line[0:i]+'\n')
? ? ? ?fpin.write(line[i+1:])
? ?else:
? ? ? ?fpin.write(line)
fpout.close()
fpin.close()
轉載于:https://my.oschina.net/jastme/blog/506688
總結
以上是生活随笔為你收集整理的测试你的Python 水平----6的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入理解javascript函数
- 下一篇: 【python】抄写大神的百度贴吧代码