Python是一种通用的高级编程语言。您可以用它做很多事情,例如开发桌面GUI应用程序、网站和Web应用程序等。作为一种高级编程语言,Python还可以让您通过处理常见的编程任务来专注于应用程序的核心功能。并且,编程语言简单的语法规则进一步简化了代码库的可读性和应用程序的可维护性。Python相对于其他编程语言的优势是:与主要平台和操作系统的兼容性;许多开源框架和工具;代码可读和可维护;健壮的标准库;标准的测试驱动开发在本文中,我将介绍25个简短而有用的代码片段,它们可以帮助您完成日常任务。1、两个变量之间交换值在其他语言中,要在两个变量之间交换值而不是使用第三个变量,我们要么使用算术运算符,要么使用按位异或。在Python中,它要简单得多,如下所示。a=5b=10a,b=b,aprint(a)#10print(b)#52。检查给定的数字是否是偶数。如果给定的数字是偶数,则以下函数返回True,否则返回False。defis_even(num):eturnnum%2==0is_even(10)#True3.将多行字符串拆分为行列表以下函数可用于将多行字符串拆分为行列表。defsplit_lines(s):returns.split('n')split_lines('50npythonnsnippets')#['50','python','snippets']4.找到对象使用的内存。标准库的sys模块提供了getsizeof()函数。此函数接受一个对象,调用该对象的sizeof()方法,并返回结果,使该对象可检查。importsysprint(sys.getsizeof(5))#28print(sys.getsizeof("Python"))#555、反转字符串Python字符串库不像其他Python容器(如list)那样支持内置的reverse()。反转字符串的方法有很多种,其中最简单的就是使用切片运算符。language="python"reversed_language=language[::-1]print(reversed_language)#nohtyp6.打印一个字符串n次不使用循环打印一个字符串n次是非常容易的,如下所示。defrepeat(string,n):return(string*n)repeat('python',3)#pythonpythonpython7.检查一个字符串是否为回文下面的函数用于检查一个字符串是否为回文。defpalindrome(string):returnstring==string[::-1]palindrome('python')#False8.将字符串列表合并为单个字符串以下代码段将字符串列表合并为单个字符串。strings=['50','python','snippets']print(','.join(strings))#50,python,snippets9,找到列表的第一个元素这个函数返回传递的列表的第一个元素元素。defhead(列表):returnlist[0]print(head([1,2,3,4,5]))#110。查找两个列表中任何一个列表中存在的元素此函数返回两个列表中的任何一个列表中的每个元素。defunion(a,b):returnlist(set(a+b))union([1,2,3,4,5],[6,2,8,1,4])#[1,2,3,4,5,6,8]11.查找给定列表中的所有唯一元素此函数返回给定列表中存在的唯一元素。defunique_elements(numbers):returnlist(set(numbers))unique_elements([1,2,3,2,4])#[1,2,3,4]12.计算一组数字的平均值这个函数返回列表两个或多个数字的平均值。defaverage(*args):returnsum(args,0.0)/len(args)average(5,8,2)#5.013。Checkifthelistcontainsalluniquevalues此函数检查列表中的所有元素是否都是唯一的。defunique(list):iflen(list)==len(set(list)):print("Allelementsareunique")else:print("Listhasduplicates")unique([1,2,3,4,5])#Allelementsareunique14、跟踪列表中元素的频率Python计数器跟踪容器中每个元素的频率。Counter()返回一个字典,其中元素作为键,它们的出现频率作为值。fromcollectionsimportCounterlist=[1,2,3,2,4,3,2,3]count=Counter(list)print(count)#{2:3,3:3,1:1,4:1}15.搜索列表中最常见的元素此函数返回列表中最常出现的元素。defmost_frequent(list):returnmax(set(list),key=list.count)numbers=[1,2,3,2,4,3,1,3]most_frequent(numbers)#316,下面将角度转为弧度将角度转换为弧度的函数。importmathdefdegrees_to_radians(deg):return(deg*math.pi)/180.0degrees_to_radians(90)#1.570796326794896617,计算执行一段代码所需的时间下面的代码片段用于计算执行一段代码所需的时间。importtimestart_time=time.time()a,b=5,10c=a+bend_time=time.time()time_taken=(end_time-start_time)*(10**6)print("Timetakeninmicro_seconds:",time_taken)#Timetakeninmicro_seconds:39.57748413085937518。查找数字列表的最大公约数此函数计算数字列表的最大公约数。fromfunctoolsimportreduceimportmathdefgcd(numbers):returnreduce(math.gcd,numbers)gcd([24,108,90])#619。查找字符串中的唯一字符此代码段可用于查找字符串中的所有唯一字符。string="abcbcabdb"unique=set(string)new_string=''.join(unique)print(new_string)#abcd20。使用lambda函数Lambda是一个匿名函数,它只能保存一个表达式。x=lambdaa,b,c:a+b+cprint(x(5,10,20))#3521,使用映射函数此函数将给定函数应用于给定迭代的每个项目(列表、元组等),返回结果列表。defmultiply(n):returnn*nlist=(1,2,3)result=map(multiply,list)print(list(result))#{1,4,9}22.使用filter函数这个函数传递一个函数Filters给定的序列,测试序列中的每个元素是否为真。arr=[1,2,3,4,5]arr=list(filter(lambdax:x%2==0,arr))print(arr)#[2,4]23.使用列表推导listcomprehension(list推导式)为我们提供了一种基于某些迭代创建列表的简单方法。在创建过程中,可迭代对象中的元素可以有条件地包含到新列表中,并根据需要进行转换。numbers=[1,2,3]squares=[number**2fornumberinnumbers]print(squares)#[1,4,9]24.切片用于从给定的序列序列或子序列中提取连续元素。以下函数用于连接两个切片操作的结果。首先,我们将列表从索引d切到末尾,然后从开头切到索引d。defrotate(arr,d):returnarr[d:]+arr[:d]if__name__=='__main__':arr=[1,2,3,4,5]arr=rotate(arr,2)print(arr)#[3,4,5,1,2]25.使用函数链调用最后一段代码用于从一行调用多个函数并计算结果。defadd(a,b):returna+bdefsubtract(a,b):returna-ba,b=5,10print((subtractifa>belseadd)(a,b))#15
