超实用的三十个 Python 案例

python实操案例——小白篇 创建一个多功能计算器,支持加法、减法、乘法、除法操作,并包含输入验证和错误处理。:编写一个函数,在用户输入的数字列表中查找最大值和最小值,并包含数据验证。:编写一个函数,判断用户输入的数字是奇数还是偶数,并包含输入验证。:编写一个程序,统计用户输入字符串中每个字符的出现次数,忽略空格。:计算用户输入的一组数字的平均值,包含非数字输入的验证。:编写一个函数生成斐波那契数列,并包含数据验证和扩展。:创建一个文本文件,写入内容并读取,包含错误处理。 阅读详情

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。它的简单和易用性造就了它如此流行的原因。

在本文中,我们将会介绍 30 个简短的代码片段,你可以在 30 秒或更短的时间里理解和学习这些代码片段。

1.检查重复元素

下面的方法可以检查给定列表中是否有重复的元素。它使用了 set() 属性,该属性将会从列表中删除重复的元素。

def all_unique(lst):   
    return len(lst) == len(set(lst))       
 x = [1,1,2,2,3,2,3,4,5,6]    
 y = [1,2,3,4,5]      
all_unique(x) # False    
all_unique(y) # True 

2.变位词

检测两个字符串是否互为变位词(即互相颠倒字符顺序)

from collections import Counter      
def anagram(first, second):      
    return Counter(first) == Counter(second)    
 anagram("abcd3", "3acdb") # True 

3.检查内存使用情况

以下代码段可用来检查对象的内存使用情况。

import sys   
variable = 30    
print(sys.getsizeof(variable)) # 24 

4.字节大小计算

以下方法将以字节为单位返回字符串长度。

def byte_size(string):        return(len(string.encode( utf-8 )))        byte_size(  ) # 4    byte_size( Hello World ) # 11 

5.重复打印字符串 N 次

以下代码不需要使用循环即可打印某个字符串 n 次

n = 2;   
s ="Programming"; print(s * n);   
# ProgrammingProgramming 

6.首字母大写

以下代码段使用 title() 方法将字符串内的每个词进行首字母大写。

s = "programming is awesome"      
print(s.title()) # Programming Is Awesome 

7.分块

以下方法使用 range() 将列表分块为指定大小的较小列表。

from math import ceil    def chunk(lst, size):        return list(            map(lambda x: lst[x * size:x * size + size],                list(range(0, ceil(len(lst) / size)))))    chunk([1,2,3,4,5],2) # [[1,2],[3,4],5] 

8.压缩

以下方法使用 fliter() 删除列表中的错误值(如:False, None, 0 和“”)

def compact(lst):      
    return list(filter(bool, lst))    
compact([0, 1, False, 2,   , 3,  a ,  s , 34]) # [ 1, 2, 3,  a ,  s , 34 ] 

9.间隔数

以下代码段可以用来转换一个二维数组。

array = [[ a ,  b ], [ c ,  d ], [ e ,  f ]]      
transposed = zip(*array)      
print(transposed) # [( a ,  c ,  e ), ( b ,  d ,  f )] 

10.链式比较

以下代码可以在一行中用各种操作符进行多次比较。

a = 3      
print( 2 < a < 8) # True      
print(1 == a < 2) # False 

11.逗号分隔

以下代码段可将字符串列表转换为单个字符串,列表中的每个元素用逗号分隔。

hobbies = ["basketball", "football", "swimming"]  
print("My hobbies are: " + ", ".join(hobbies)) # My hobbies are: basketball, football, swimming 

12.计算元音字母数

以下方法可计算字符串中元音字母(‘a’, ‘e’, ‘i’, ‘o’, ‘u’)的数目。

import re      
def count_vowels(str):      
    return len(len(re.findall(r [aeiou] , str, re.IGNORECASE)))      
count_vowels( foobar ) # 3      
count_vowels( gym ) # 0 

13.首字母恢复小写

以下方法可用于将给定字符串的第一个字母转换为小写。

def decapitalize(string):      
    return str[:1].lower() + str[1:]   
decapitalize( FooBar ) #  fooBar    
decapitalize( FooBar ) #  fooBar 

14.平面化

以下方法使用递归来展开潜在的深度列表。

def spread(arg):    ret = []    for i in arg:        if isinstance(i, list):            ret.extend(i)        else:            ret.append(i)    return retdef deep_flatten(lst):    result = []    result.extend(        spread(list(map(lambda x: deep_flatten(x) if type(x) == list else x, lst))))    return resultdeep_flatten([1, [2], [[3], 4], 5]) # [1,2,3,4,5] 

15.差异

该方法只保留第一个迭代器中的值,从而发现两个迭代器之间的差异。

def difference(a, b):  
    setset_a = set(a) 
    setset_b = set(b)  
    comparison = set_a.difference(set_b)  
    return list(comparison)  
difference([1,2,3], [1,2,4]) # [3] 

16.寻找差异

下面的方法在将给定的函数应用于两个列表的每个元素后,返回两个列表之间的差值。

def difference_by(a, b, fn):  
    b = set(map(fn, b))  
    return [item for item in a if fn(item) not in b]  
from math import floor  
difference_by([2.1, 1.2], [2.3, 3.4],floor) # [1.2]  
difference_by([{  x : 2 }, {  x : 1 }], [{  x : 1 }], lambda v : v[ x ]) # [ { x: 2 } ] 

17.链式函数调用

以下方法可在一行中调用多个函数。

def add(a, b):  
    return a + b  
def subtract(a, b):  
    return a - b  
a, b = 4, 5  
print((subtract if a > b else add)(a, b)) # 9 

18.检查重复值

以下方法使用 set() 方法仅包含唯一元素的事实来检查列表是否具有重复值。

def has_duplicates(lst):  
    return len(lst) != len(set(lst))    
x = [1,2,3,4,5,5]  
y = [1,2,3,4,5]  
has_duplicates(x) # True  
has_duplicates(y) # False 

19.合并两个词典

以下方法可用于合并两个词典。

def merge_two_dicts(a, b):  
    c = a.copy()   # make a copy of a  
    c.update(b)    # modify keys and values of a with the ones from b  
    return c  
a = {  x : 1,  y : 2}  
b = {  y : 3,  z : 4}  
print(merge_two_dicts(a, b)) # { y : 3,  x : 1,  z : 4} 

在Python 3.5及更高版本中,你还可以执行以下操作:

def merge_dictionaries(a, b)   return {**a, **b}a = {  x : 1,  y : 2}b = {  y : 3,  z : 4}print(merge_dictionaries(a, b)) # { y : 3,  x : 1,  z : 4} 

20.将两个列表转换成一个词典

以下方法可将两个列表转换成一个词典。

def to_dictionary(keys, values):  
    return dict(zip(keys, values))     
keys = ["a", "b", "c"]      
values = [2, 3, 4]  
print(to_dictionary(keys, values)) # { a : 2,  c : 4,  b : 3} 

21.使用枚举

以下方法将字典作为输入,然后仅返回该字典中的键。

list = ["a", "b", "c", "d"]  
for index, element in enumerate(list):   
    print("Value", element, "Index ", index, )  
# ( Value ,  a ,  Index  , 0)  
# ( Value ,  b ,  Index  , 1)  
#( Value ,  c ,  Index  , 2)  
# ( Value ,  d ,  Index  , 3) 

22.计算所需时间

以下代码段可用于计算执行特定代码所需的时间。

import time  
start_time = time.time()  
a = 1  
b = 2  
c = a + b  
print(c) #3  
end_time = time.time()  
total_time = end_time - start_time  
print("Time: ", total_time)  
# ( Time:  , 1.1205673217773438e-05) 

23.Try else 指令

你可以将 else 子句作为 try/except 块的一部分,如果没有抛出异常,则执行该子句。

try:  
    2*3  
except TypeError:  
    print("An exception was raised") 
else: 
    print("Thank God, no exceptions were raised.") 
#Thank God, no exceptions were raised. 

24.查找最常见元素

以下方法返回列表中出现的最常见元素。

def most_frequent(list):  
    return max(set(list), key = list.count)    
list = [1,2,1,2,3,2,1,4,2]  
most_frequent(list) 

25.回文

以下方法可检查给定的字符串是否为回文结构。该方法首先将字符串转换为小写,然后从中删除非字母数字字符。最后,它会将新的字符串与反转版本进行比较。

def palindrome(string):  
    from re import sub  
    s = sub( [W_] ,   , string.lower())  
    return s == s[::-1]  
palindrome( taco cat ) # True 

26.没有 if-else 语句的简单计算器

以下代码段将展示如何编写一个不使用 if-else 条件的简单计算器。

import operator  
action = {  
    "+": operator.add,  
    "-": operator.sub,  
    "/": operator.truediv,  
    "*": operator.mul,  
    "**": pow 
}  
print(action[ - ](50, 25)) # 25 

27.元素顺序打乱

以下算法通过实现 Fisher-Yates算法 在新列表中进行排序来将列表中的元素顺序随机打乱。

from copy import deepcopy  
from random import randint  
def shuffle(lst):  
    temp_lst = deepcopy(lst)  
    m = len(temp_lst)  
    while (m):  
        m -= 1  
        i = randint(0, m)  
        temp_lst[m], temp_lst[i] = temp_lst[i], temp_lst[m]  
    return temp_lst    
foo = [1,2,3]  
shuffle(foo) # [2,3,1] , foo = [1,2,3] 

28.列表扁平化

以下方法可使列表扁平化,类似于JavaScript中的[].concat(…arr)。

def spread(arg):  
    ret = []  
    for i in arg:  
        if isinstance(i, list):  
            ret.extend(i)  
        else:  
            ret.append(i)  
    return ret  
spread([1,2,3,[4,5,6],[7],8,9]) # [1,2,3,4,5,6,7,8,9] 

29.变量交换

以下是交换两个变量的快速方法,而且无需使用额外的变量。

def swap(a, b): 
  return b, a  
a, b = -1, 14 
swap(a, b) # (14, -1) 

30.获取缺失键的默认值

以下代码段显示了如何在字典中没有包含要查找的键的情况下获得默认值。

d = { a : 1,  b : 2}  
print(d.get( c , 3)) # 3 

以上是你在日常工作中可能会发现的有用方法的简短列表。它主要基于这个GitHub项目(https://github.com/30-seconds/30_seconds_of_knowledge),你可以在其中找到许多其他有用的代码片段,包括Python及其他编程语言和技术。

 

27个实用Python实例 我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。最后祝大家天天进步! 阅读详情

相关推荐

python3的各种经典案例,总共299个案例,直接可以运行(中:100个案例)

一. python3的各种经典案例,总共299个案例,直接可以运行(前:100个案例) 【例101】插入区间 难度等级★★ 3.代码实现 class Interval(object): def __init__(self, start, end): self.start = start self.end = end def get(self): str1 = "(" + str(self.start) + "," + str(self.en

数据知道的博客 3万+

十五个Python经典案例,学会这些,Python基础已过关!

今天给大家搜集了十五道Python的经典案例,希望各位都能学会!不懂得大家可以在加群在群里发消息问问题,想要资料的也自取! 一、猜数字 1到4能组成多少个互不相同且不重复数字的三位数?分别是? 分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 程序源代码: 二、公司发放的奖金的计算 分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 程序源代码: 三、一个整数加上100后是一个完全平方数,再加168又是一个完

码农黑羽的博客 9971

【黑马点评优化】2-Canel实现多级缓存(Redis+Caffeine)同步

【黑马点评优化】2-Canel实现多级缓存(Redis+Caffeine)同步

m0_52031708的博客 3841

十个 Python 案例分享

十个 Python 案例分享,不过字数可能达不到 15000 字,你可以根据实际情况进一步拓展和完善每个案例的内容细节哦。

芊言凝语 7039

Spacedesk保姆级教程:用旧平板给Windows电脑当副屏,从安装到避坑一步到位

本文提供Spacedesk保姆级教程,教你如何将旧平板变成Windows电脑的副屏,从软件安装到网络配置、显示优化及声音交互,一步步避开常见陷阱。通过WiFi实现扩展屏功能,支持4K分辨率和60Hz刷新率,让闲置设备焕发新生。

weixin_42524945的博客 1万+

Excel曲线拟合实战:从基础趋势线到高级回归分析

本文系统介绍了Excel曲线拟合的完整工作流,从基础的散点图与趋势线应用,到利用Solver插件进行自定义高级回归分析。文章详细讲解了线性、多项式、指数、对数等六大常用数学模型的适用场景与选择方法,并强调了通过R²值、残差图评估拟合效果、避免过拟合与外推风险的关键步骤,帮助读者掌握从数据探索到预测评估的实战技能。

weixin_29280219的博客 531

超实用的12个Python爬虫实战案例:小白入门必备(附源码)

Python爬虫,又称网络爬虫,是一种自动获取网页内容的程序。通过模拟人类浏览网页的行为,发送HTTP请求,获取网页源代码,再经过解析、提取等技术手段,获取所需数据。对于初学者来说,掌握Python爬虫不仅能够提升编程技能,还能在数据获取、信息分析等方面发挥巨大作用。本文将介绍12个超实用的Python爬虫实战案例,帮助小白快速入门。【源码文末领取】

2301_78150559的博客 2400

移远EC20模块USB模式切换的底层逻辑与驱动适配探秘

本文深入探讨了移远EC20模块USB模式切换的底层逻辑与驱动适配机制,详细解析了AT命令控制下的USB0与WWAN0模式差异。通过分析USB协议栈、内核驱动框架及网络子系统的交互,提供了模式切换的完整操作流程和常见问题解决方案,助力开发者优化4G通信模块在嵌入式设备中的稳定连接。

cc789的博客 842

超实用的30个 Python 案例

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。它的简单和易用性造就了它如此流行的原因。在本文中,我们将会介绍 30 个简短的代码片段,你可以在 30 秒或更短的时间里理解和学习这些代码片段。1.检查重复元素下面的方法可以检查给定列表中是否有重复的元素。它使用了 set() 属性,该属性将会从列表中删除重复的元素。2.变位词检测两个字符串是否互为变位词(即互相颠倒字符顺序)3.检查内存使用情况以下代码段可用来检查对象的内存使用情况。

qq_46094651的博客 4038

torchsparse安装

torchsparse安装以及安装失败原因分析和解决

AI_BING_的博客 1万+

【STM32系统及仿真】基于STM32+蓝牙设计的智能窗帘系统__资料编号8

本项目设计并实现了一种基于STM32单片机的智能窗帘系统,集成了光敏传感器、温湿度传感器、蓝牙模块和OLED显示屏,实现了窗帘的自动调节、环境监测和远程控制功能。系统采用STM32F103C8T6作为主控制器,通过光敏传感器检测环境光强,温湿度传感器监测室内环境,蓝牙模块实现与手机APP的通信,用户可以通过APP远程控制窗帘的开合状态。系统在检测到环境光照强度或温度超出设定范围时,可自动调节窗帘的开合,以达到节能和提高舒适度的目的。

嵌入式阿齐Archie 2万+

python创意实用案例-python实用案例

广告关闭腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元!(python内部对异常已处理)1 class listiterator(object) 2 3 | methods definedhere:4 5 | 6 7 | __getattribute__(...) 8 9 | x.__getattribute__(name) x.name ...

q6q6q的专栏 632

竞赛经验——挑战杯、互联网加、北斗杯、微软创新杯、计算机设计等比赛教训与经验

最近参加一些比赛,北斗杯、挑战者杯、微软创新杯等比赛,每次比赛都有不少需要总结的地方,特别是项目展示上技巧很多,总结一下。 首先最重要的是作品自身硬!自身的作品完成度不高,或者是没有创新点,就没必要参加了。 比如是出去比赛的话,我反正每次碰到最多的是智慧农场、智慧家居之类,不知道为啥这种的太多了。如果是创业型比赛,评委基本会问小米已经做得很好了很便宜了,你的优势在哪里?这些都是常见的问题提前要...

沉迷单车的追风少年 7325

简单python脚本实例-超实用的 30 段 Python 案例

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。它的简单和易用性造就了它如此流行的原因。如果你正在阅读本文,那么你或多或少已经使用过Python或者对Python感兴趣。在本文中,我们将会介绍 30 个简短的代码片段,你可以在 30 秒或更短的时间里理解和学习这些代码片段。1.检查重复元素下面的方法可以检查给定列表中是否有重复的元素。它...

q6q6q的专栏 2130

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Python 自动化 30 个实用案例

今天推文,新浪研发经理尹会生打造的,关于Python自动化的30个实用案例,我看过后觉得很实用,所以推荐给你。下面是详细介绍:先给你分享一个案例:场景是在维护日活超过 3 亿用户的微博私...

算法channel 8662

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

50个Python实用代码案例:拿来即用,效率翻倍!

如今,开发节奏越来越快,"快、准、狠"已成为优秀程序员的标配。没有效率意识,很容易被淘汰。尤其是在初中级程序员圈子里,大家都在暗暗较劲,比拼谁能更快搞定任务,谁能更好复用代码。掌握一套实战代码案例库,已经成了新一代程序员的“隐性标配”。这50个Python代码小案例只是Python强大功能的冰山一角。希望这些“拿来即用”的代码片段能帮助您更高效地完成日常编程任务!50个Python代码案例是你开发路上的“瑞士军刀”,从批量处理到网络爬虫,覆盖了日常开发的方方面面。

朱雀随云记的博客 1812

python实用案例-python实用案例

广告关闭腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元!(python内部对异常已处理)1 class listiterator(object) 2 3 | methods definedhere:4 5 | 6 7 | __getattribute__(...) 8 9 | x.__getattribute__(name) x.name ...

weixin_37988176的博客 525

超实用的 30 段 Python 案例(一)

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。 它的简单和易用性造就了它如此流行的原因。 如果你正在阅读本文,那么你或多或少已经使用过Python或者对Python感兴趣。 在本文中,我们将会介绍 30 个简短的代码片段,你可以在 30 秒或更短的时间里理解和学习这些代码片段。 1.检查重复元素 下面的方法可以检查给定列表中是否有重复...

人生苦短, 还不用Python? 3302

超实用的 30 段Python 案例(下)

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。它的简单和易用性造就了它如此流行的原因。如果你正在阅读本文,那么你或多或少已经使用过Python或者对Python感兴趣。在本文中,我们将会介绍 30 个简短的代码片段,你可以在 30 秒或更短的时间里理解和学习这些代码片段。

weixin_53707653的博客 360

Python集合应用:10+个集合操作的实用案例

集合(Set)在Python中是一个无序且不重复元素的序列,它非常适合用于数据去重和集合运算。今天,我们将通过10个实用案例,一步步探索集合的奥秘,让Python编程更加得心应手。

Candyz7的博客 2005

Python超实用案例15个,每天学习十分钟,从今天开始成为高手!

Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。这篇文章主要介绍了超实用的 15段 Python 案例,需要的朋友可以参考下:Python是目前最流行的语言之一,它在数据科学、机器学习、web开发、脚本编写、自动化方面被许多人广泛使用。它的简单和易用性造就了它如此流行的原因。如果你正在阅读本文,那么你或多或少已经使用过Python或者对Python感兴趣。

2301_80239908的博客 286

Python集合应用:10个集合操作的实用案例

通过以上的10个案例,我们展示了Python集合的多种操作及其在实际应用中的有效性。集合的独特性质使得它成为处理数据时一个非常有用的工具。希望这些示例能够帮助你更好地理解并应用Python集合。如果你有任何问题,欢迎随时提问!继续加油!

qq_36807888的博客 1411
上一篇: Python 为什么不设计 do-while 循环结构?
下一篇: Python实战案例,CV2模块,Python实现抖音字符视频
Python_xiaowu
博客等级 码龄5年 3096粉丝 178原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值