1. 程式人生 > 程式設計 >python使用建議技巧分享(三)

python使用建議技巧分享(三)

這是一個系列文章,主要分享python的使用建議和技巧,每次分享3點,希望你能有所收穫。

1 如何去掉list中重複元素

my_list = [3,2,1,3]
print my_list
# [3,3]
unique_list = list(set(my_list))
print unique_list
# [1,3]

或者

from collections import OrderedDict


my_list = [3,3]
unique_list = list(OrderedDict.fromkeys(my_list))
print unique_list
# [3,1]

前一種方式不會保留list的元素順序,後一種方式會保留list的元素順序。

2 如何讀取dict中的值

不推薦方式

url_dict = {
  'google': 'https://www.google.com/','github': 'https://github.com/','facebook': 'https://www.facebook.com/',}


print url_dict['facebook']
print url_dict['google']
print url_dict['github']
# print url_dict['baidu']
# KeyError: 'baidu'

# https://www.facebook.com/
# https://www.google.com/
# https://github.com/

推薦方式

url_dict = {
  'google': 'https://www.google.com/',}

print url_dict.get('facebook','https://www.google.com/')
print url_dict.get('google','https://www.google.com/')
print url_dict.get('github','https://www.google.com/')
print url_dict.get('baidu','https://www.google.com/')

# https://www.facebook.com/
# https://www.google.com/
# https://github.com/
# https://www.google.com/

前一種方式讀取一個不存在的key時,會導致KeyError,例如print url_dict[‘baidu'],因為字典中不存在baidu,所以會導致KeyError。後一種方式使用字典的get方法,如果key不存在,不會產生KeyError,如果給了預設值,會返回預設值,否則返回None。

3 如何排序字典

unordered_dict = {'c': 1,'b': 2,'a': 3}

print sorted(unordered_dict.items(),key=lambda e: e[1])
# [('c',1),('b',2),('a',3)]

print sorted(unordered_dict.items(),key=lambda e: e[0])
# [('a',3),('c',1)]

print sorted(unordered_dict.items(),key=lambda e: e[1],reverse=True)
# [('a',1)]

第一種方式是按字典的value升序排序,第二種方式是按字典的key升序排序,第三種方式是按字典的value降序排序,和第一種方式相反,因為指定了引數reverse為True。sorted函式功能挺強大,不止可以排序字典,任何iterable物件都可以排序,如果想深入瞭解請戳https://docs.python.org/2.7/howto/sorting.html#sortinghowto。

以上就是python使用建議技巧分享(三)的詳細內容,更多關於python 建議與技巧的資料請關注我們其它相關文章!