超实用的30个Python案例转载

原创
小哥 3年前 (2022-10-17) 阅读数 60 #大杂烩

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):
    set_a = set(a)
    set_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以及其他编程语言和技术

作者:Fatos Morina

欢迎加入我们的星球,共同学习欢迎加入我们的星球,共同学习欢迎加入我们的星球,共同学习Python

推荐阅读:
入门: 最完整的零基学习最全面的零基学习最完整的零基学习Python的问题  | 从零开始学习从零基础学习从零基础学习8个月的Python  | 实战项目 |学Python这是捷径这是捷径就是这条捷径
干货:爬行豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析最佳球员分析 |   从万众期待到口碑惨败!唐探3令人失望  | 笑新伊田图龙记笑新伊田图龙记笑新伊田图龙记 | 谜语之王回答灯谜之王灯谜之王谜语之王 |用Python人山人海素描图人山人海素描图人山人海 Dishonor太火了,我用机器学习做了一个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python日常酷跑游戏日常酷跑游戏日常酷跑游戏!
AI: 会写诗的机器人会写诗的机器人会写诗的机器人 | 给图片上色给图片上色给图片上色 | 预测收入 | 《耻辱》太火了,我用机器学习做了一部迷你推荐系统电影
小工具: Pdf转Word易于修复表单和水印!易于处理的表单和水印!轻松修复桌子和水印!易于修复的形式和水印! | 一键把html将页面另存为网页另存为网页另存为pdf!|  再见PDF提款费!提款费!提款费!提款费用! | 用90构建最强大的代码行构建最强大的代码行构建最强大的代码行PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一个固定的低成本机票提醒!制作一张别针的低价机票提醒! |60代码行做了一个语音墙纸切换,天天见女士!

年度弹出文案年度弹出文案年度爆炸性文案

  • 1). 卧槽!Pdf转Word用Python轻松搞定 !

  • 2).学Python闻起来好香!我用100一行代码做了一个网站,帮助人们做了一行代码,做了一个网站,帮助了人们做了一行代码,帮助了人们PS旅行图片赚鸡腿吃旅行图片赚鸡腿

  • 3).第一次播放量过亿,火爆全网,我分析了《波妹》,发现了这些秘密

  • 4). 80一行行代码!使用Python让救济金做正确的事做做的人做好事的人A梦分身

  • 5).你必须掌握的东西你必须掌握20个python代码,简短而紧凑,永无止境的有用代码,简短而甜蜜,永无止境的有用的代码,简短而紧凑,永无止境的使用代码,简短而甜蜜,永无止境的用途

  • 6). 30个Python古怪技能集古怪小贴士收藏古怪技能集

  • 7). 我总结的80《菜鸟学习专页》《菜鸟学习专页》《菜鸟学习》Python精选干货.pdf》,都是干货

  • 8). 再见Python!我要学Go了!2500词深度分析词深度分析词深度分析 !

  • 9).发现一只舔狗的福利!这Python爬虫神器太酷了,不能自动下载女孩的照片

点击阅读原文点击查看点击点击阅读点击阅读原文点击查看200个Python案例!

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门