Python中数据类型的操作
1.現(xiàn)有字典 d= {‘a(chǎn)’:24,‘g’:52,‘i’:12,‘k’:33}請按value值進(jìn)行排序?
d= {'a':24,'g':52,'i':12,'k':33} sort_dict=sorted(d.items(),key=lambda x:x[1]) print(sort_dict)這樣的排序操作返回的是一個列表形式,有待調(diào)整。
[(‘i’, 12), (‘a(chǎn)’, 24), (‘k’, 33), (‘g’, 52)]
2.字典推導(dǎo)式
d = {key:value for (key,value) in iterable}3.反轉(zhuǎn)字符串 “aStr”?
aStr='123sdfFASF1212' print(aStr[::-1])4.請按alist中元素的age由大到小排序
def sort_by_age(list1):return sorted(alist,key=lambda x:x['age'],reverse=True)if __name__ == '__main__':alist = [{'name': 'a', 'age': 20}, {'name': 'b', 'age': 30}, {'name': 'c', 'age': 25}]print(sort_by_age(alist))5.寫一個列表生成式,產(chǎn)生一個公差為11的等差數(shù)列
print([x*11 for x in range(10)])[0, 11, 22, 33, 44, 55, 66, 77, 88, 99]
6.下面代碼的輸出結(jié)果將是什么?
list = ['a','b','c','d','e'] print(list[10:])[]
代碼將輸出[],不會產(chǎn)生IndexError錯誤,嘗試用超出成員的個數(shù)的index來獲取某個列表的成員。例如,嘗試獲取list[10]和之后的成員,會導(dǎo)致IndexError。然而,嘗試獲取列表的切片,開始的index超過了成員個數(shù)不會產(chǎn)生IndexError,而是僅僅返回一個空列表。因?yàn)檫\(yùn)行的時候沒有錯誤產(chǎn)生,導(dǎo)致Bug很難被追蹤到。
7.給定兩個列表,怎么找出他們相同的元素和不同的元素?
list1 = [1,2,3,5,6,7,8,9] list2 = [3,4,5,12,3,5,5,6,8,9,10] set1 = set(list1) set2 = set(list2) print(set1 & set2) print(set1 ^ set2){3, 5, 6, 8, 9}
{1, 2, 4, 7, 10, 12}
最后輸出的是一個集合類型,如果還想要輸出為列表,可以list(set1 & set2)
8.python代碼如何實(shí)現(xiàn)刪除list里面的重復(fù)元素尼?
方法1:先用set()結(jié)合去重,然后轉(zhuǎn)換成列表
[‘d’, ‘b’, ‘a(chǎn)’, ‘c’]
方法2:循環(huán)遍歷,再創(chuàng)建一個新的列表,并向里面添加元素。
l1 = ['b','c','d','c','a','a'] l2 = [] for i in l1:if not i in l2:l2.append(i) print(l2)方法3:
l1 = ['b','c','d','c','a','a'] l2 = sorted(set(l1),key=l1.index) print(l2)9.求出列表所有奇數(shù)并構(gòu)造新列表
a = [1,2,3,4,5,6,7,8,9,10] res = [ i for i in a if i%2==1] print(res)[1, 3, 5, 7, 9]
10.用一行python代碼寫出1+2+3+10248
from functools import reduce #1.使用sum內(nèi)置求和函數(shù) num = sum([1,2,3,10248]) print(num) #2.reduce 函數(shù) num1 = reduce(lambda x,y :x+y,[1,2,3,10248]) print(num1)學(xué)習(xí)轉(zhuǎn)載:https://github.com/kenwoodjw/python_interview_question#
總結(jié)
以上是生活随笔為你收集整理的Python中数据类型的操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中的shuffle()函数的
- 下一篇: python新式类和经典类的区别?