python 小技巧

1.获取列表中出现频率最多的值

a = [1, 2, 3, 1, 2, 3, 3, 3, 3, 2, 1, 5, 4]
 
print (max(set(a), key=a.count))
# 3
 
 
from collections import Counter
 
cnt = Counter(a)
print cnt.most_common(1)
# (3,5)
  1. 判断翻转字符串是否相等
str1 = '12345'
str2 = '54321'
 
from collections import Counter
 
print (Counter(str1) == Counter(str2))
# True
  1. 翻转字符串或数字、列表
a = 'abcdefghigklmnopqrstuvwxyz'
print (a[::-1])
# zyxwvutsrqponmlkgihgfedcba
 
print ''.join(list(reversed(a)))
# zyxwvutsrqponmlkgihgfedcba
 
num =123456789
print (int(str(num)[::-1]))
# 987654321
 
a=[1,2,3,4,5]
print(a[::-1])
# [5,4,3,2,1]
  1. 字典排序
d = {'a': '1', 'b': '2', 'c': '3', 'd': '4'}
print (sorted(d.items(), key=lambda x: x[1]))
#[(u'a', u'1'), (u'b', u'2'), (u'c', u'3'), (u'd', u'4')]
 
from operator import itemgetter
print (sorted(d.items(), key=itemgetter(1)))
# [(u'a', u'1'), (u'b', u'2'), (u'c', u'3'), (u'd', u'4')]
 
print (sorted(d, key=d.get))
# [u'a', u'b', u'c', u'd']
  1. 获取列表中最大值/最小值的索引值
li = [100, 200, 500, 30, 800, 10]
 
 
def minIndex(li):
    return min(range(len(li)), key=li.__getitem__)
 
 
def maxIndex(li):
    return max(range(len(li)), key=li.__getitem__)
 
print minIndex(li)
# 5
 
print maxIndex(li)
# 4

http://www.chenxm.cc/post/656.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 准备记录下平时使用python可以使用的小技巧,主要来自python cookbook里,可以让代码更加优雅一些,...
    fsc2016阅读 236评论 1 0
  • 能调用方法的一定是对象。 技巧#1 字符串翻转 技巧#2 矩阵转置 矩阵转置 自己喜欢的一种写法: 技巧#3 a ...
    孟轲666阅读 322评论 1 2
  • 起因 更多Python学习技巧:http://xuexi.jikexueyuan.com/course/3.htm...
    极客学院Wiki阅读 4,262评论 2 2
  • 在 Python 中字典对象是很重要的概念,因为 Python 程序运行中的各种变量名与变量值都统一存储于字典中进...
    叶俊贤阅读 6,074评论 0 1
  • 01 同样是女孩,出身农村,有的女孩成为全国摔跤冠军,从此衣食无忧,受人尊敬,而有的女孩却在来第一次月经后就被父母...
    林洢阅读 287评论 0 1