码迷,mamicode.com
首页 > 编程语言 > 详细

python使用\进阶\小技巧

时间:2020-01-24 14:32:25      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:bcd   是的   nan   else   int   col   很多   运算   组合   

1.三元运算的使用

#[on_true] if [expression] else [on_false]


a, b = 999, 34
result = a if a%b==0 else b


def subtract(a,b):
  return a-b
def add(a,b):
  return a+b
pd = 1
print( (subtract if pd else add)(23,5) )

 

2.列表/字符串的逆序

lis = [1,2,3,4,5]
lis[::-1]
# print(lis)
# [5,4,3,2,1]

 

3.枚举enumerate的使用

for i,item in enumerate(‘abcdef‘):
  print(i,‘ ‘,item)


‘‘‘
0 a
1 b
2 c
3 d
4 e
5 f
‘‘‘

 

>>> list(enumerate(abc))

[(0, a), (1, b), (2, c)]

>>> list(enumerate(abc, 1))

[(1, a), (2, b), (3, c)]

 

4.字典/集合 解析

这个应该用的很多了,大家都熟悉

#下面是ascii表的部分
>> _ascii  = {chr(i): i for i in range(32,127)}
{‘ ‘: 32, ‘!‘: 33, ‘"‘: 34, ‘#‘: 35, ‘$‘: 36, ‘%‘: 37, ‘&‘: 38, "‘": 39, ‘(‘: 40, ‘)‘: 41, ‘*‘: 42, ‘+‘: 43, ‘,‘: 44, ‘-‘: 45, ‘.‘: 46, ‘/‘: 47}

 

5.字符串组合拼接 / "".join的使用

# 将列表中的所有元素组合成字符串
>> a = ["google ","is ","awsome","!"]
>> " ".join(a)
google is awsome!
>> "".join(a)
googleisawsome!
>> "_".join(a)
google_is_awsome_!

 

6.通过【键】排序字典元素

>> dict = {‘apple‘:10, ‘orange‘:28, ‘banana‘:5, ‘tomato‘:1}
>> sorted(dict.items(),key=lambda x:x[1])
[(‘tomato‘, 1), (‘banana‘, 5), (‘apple‘, 10), (‘orange‘, 28)]
>> sorted(dict.items(),key=lambda x:x[0])
[(‘apple‘, 10), (‘banana‘, 5), (‘orange‘, 28), (‘tomato‘, 1)]

 

7.for else的使用

是的

 

8.字典get()方法

>> d = {‘A‘:92,‘B‘:93}
>> d.get(‘B‘)
93
>> d.get(‘C‘,‘None‘)
‘None‘

 

7.for else的使用

pd = 11
for i in range(5):
  print(i)
  if pd==i:
    break;
else:
  print("yeaho??")

‘‘‘

输出为

0 1 2 3 4 yeaho??

如果pd=3,输出为

0 1 2 3

‘‘‘

 

8.二维矩阵的转置

# 直接使用zip()函数

>> matrix = [[‘a‘,‘b‘],[‘c‘,‘d‘],[‘e‘,‘f‘]]
>>list(zip(*matrix))
[(‘a‘, ‘c‘, ‘e‘), (‘b‘, ‘d‘, ‘f‘)]

 

python使用\进阶\小技巧

标签:bcd   是的   nan   else   int   col   很多   运算   组合   

原文地址:https://www.cnblogs.com/dynmi/p/12232121.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!