最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Python学习之17个关于Python的小技巧

来源:动视网 责编:小采 时间:2020-11-27 14:21:12
文档

Python学习之17个关于Python的小技巧

Python学习之17个关于Python的小技巧:Python 是一门非常简洁的语言,python的简洁易用令人不得不感叹这门语言的轻便。在本文中,我们列举了 17 个非常有用的 Python 技巧,这 17 个技巧都非常简单,但它们都很常用且能激发不一样的思路。很多人都知道 Python 是一种高级编程语言,其设计的核心理
推荐度:
导读Python学习之17个关于Python的小技巧:Python 是一门非常简洁的语言,python的简洁易用令人不得不感叹这门语言的轻便。在本文中,我们列举了 17 个非常有用的 Python 技巧,这 17 个技巧都非常简单,但它们都很常用且能激发不一样的思路。很多人都知道 Python 是一种高级编程语言,其设计的核心理


Python 是一门非常简洁的语言,python的简洁易用令人不得不感叹这门语言的轻便。在本文中,我们列举了 17 个非常有用的 Python 技巧,这 17 个技巧都非常简单,但它们都很常用且能激发不一样的思路。

很多人都知道 Python 是一种高级编程语言,其设计的核心理念是代码的易读性,以及允许编程者通过若干行代码轻松表达想法创意。实际上,很多人选择学习 Python 的首要原因是其编程的优美性,用它编码和表达想法非常自然。此外,Python 的编写使用方式有多种,数据科学、网页开发、机器学习皆可使用 Python。Quora、Pinterest 和 Spotify 都使用 Python 作为其后端开发语言。

交换变量值

"""pythonic way of value swapping"""
a, b=5,10
print(a,b)
a,b=b,a
print(a,b)

将列表中的所有元素组合成字符串

a=["python","is","awesome"]
print(" ".join(a))

查找列表中频率最高的值

"""most frequent element in a list"""
a=[1,2,3,1,2,3,2,2,4,5,1]
print(max(set(a),key=a.count))
"""using Counter from collections"""
from collections import Counter
cnt=Counter(a)
print(cnt.most_commin(3))

检查两个字符串是不是由相同字母不同顺序组成

from collections import Counter
Counter(str1)==Counter(str2)

反转字符串

"""reversing string with special case of slice step param"""
 a ='abcdefghij k lmnopqrs tuvwxyz 'print(a[ ::-1] )
 """iterating over string contents in reverse efficiently."""
 for char in reversed(a):
 print(char )
 """reversing an integer through type conversion and slicing ."""
 num = 123456789
 print( int( str(num)[::1]))

反转列表

 """reversing list with special case of slice step param"""
 a=[5,4,3,2,1]
 print(a[::1])
 """iterating over list contents in reverse efficiently ."""
 for ele in reversed(a):
 print(ele )

转置二维数组

"""transpose 2d array [[a,b], [c,d], [e,f]] -> [[a,c,e], [b,d,f]]"""
original = [['a', 'b'], ['c', 'd'], ['e', 'f']]
transposed = zip( *original )
print(list( transposed) )

链式比较

""" chained comparison with all kind of operators"""
b =6
print(4< b < 7 )
print(1 == b < 20)

链式函数调用

"""calling different functions with same arguments based on condition"""
def product(a, b): 
 return a * b
def add(a, b): 
 return a+ b
b =True
print((product if b else add)(5, 7))

复制列表

 """a fast way to make a shallow copy of a list"""
 b=a
 b[0]= 10
 """ bothaandbwillbe[10,2,3,4,5]"""
 b = a[:]b[O] = 10
 """only b will change to [10, 2, 3, 4, 5] """
 """copy list by typecasting method"""
 a=[l,2,3,4,5]
print(list(a))
 """using the list.copy( ) method ( python3 only )""" 
 a=[1,2,3,4,5]
 print(a.copy( ))
 """copy nested lists using copy. deepcopy"""
 from copy import deepcopy
 l=[l,2],[3,4]]
 l2 = deepcopy(l)
print(l2)

字典get法

""" returning None or default value, when key is not in dict""" 
d = ['a': 1, 'b': 2]
print(d.get('c', 3))

通过「键」排序字典元素

"""Sort a dictionary by its values with the built-in sorted( ) function and a ' key' argument ."""
 d = {'apple': 10, 'orange': 20, ' banana': 5, 'rotten tomato': 1)
 print( sorted(d. items( ), key=lambda x: x[1]))
 """Sort using operator . itemgetter as the sort key instead of a lambda"""
 from operator import itemgetter
 print( sorted(d. items(), key=itemgetter(1)))
 """Sort dict keys by value"""
 print( sorted(d, key=d.get))

For Else

"""else gets called when for loop does not reach break statement"""
a=[1,2,3,4,5]
for el in a: 
 if el==0: 
 break
else: 
 print( 'did not break out of for loop' )

转换列表为逗号分割符格式

 """converts list to comma separated string"""
items = [foo', 'bar', 'xyz']
print (','.join( items))
"""list of numbers to comma separated"""
numbers = [2, 3, 5, 10]
print (','.join(map(str, numbers)))
"""list of mix data"""
data = [2, 'hello', 3, 3,4]
print (','.join(map(str, data)))

合并字典

"""merge dict's"""
d1 = {'a': 1}
d2 = {'b': 2}
# python 3.5 
print({**d1, **d2})
print(dict(d1. items( ) | d2. items( )))
d1. update(d2)
print(d1)

列表中最小和最大值的索引

"""Find Index of Min/Max Element .
"""
lst= [40, 10, 20, 30]
def minIndex(lst): 
 return min( range(len(lst)), key=lst.. getitem__ )
def maxIndex(lst):
 return max( range( len(lst)), key=lst.. getitem__ )
print( minIndex(lst)) 
print( maxIndex(lst))

移除列表中的重复元素

 """remove duplicate items from list. note: does, not preserve the original list order"""
items=[2,2,3,3,1]
newitems2 = list(set( items)) 
print (newitems2)
"""remove dups and, keep. order"""
from collections import OrderedDict
items = ["foo", "bar", "bar", "foo"]
print( list( orderedDict.f romkeys(items ).keys( )))

以上,就是关于Python编程中的17个实用且有效的小操作

文档

Python学习之17个关于Python的小技巧

Python学习之17个关于Python的小技巧:Python 是一门非常简洁的语言,python的简洁易用令人不得不感叹这门语言的轻便。在本文中,我们列举了 17 个非常有用的 Python 技巧,这 17 个技巧都非常简单,但它们都很常用且能激发不一样的思路。很多人都知道 Python 是一种高级编程语言,其设计的核心理
推荐度:
标签: 小技巧 技巧 学习
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top