当前位置:首页 > 编程技术 > 正文内容

用于日常编程问题的 10 个 Python 代码片段

yc8881年前 (2023-08-10)编程技术243

用于日常编程问题的 10 个 Python 代码片段

Python 已成为最受欢迎的编程语言之一,由于其灵活性、用户友好性和广泛的库。无论您是初学者还是有准备的开发人员,拥有一组方便的代码部分都可以为您节省大量时间和精力。在本文中,我们将深入研究十个可用于解决日常编程挑战的 Python 代码片段。我们将指导您完成每个片段,以简单的步骤阐明其运作方式。




    交换两个变量


    切换两个变量的值是编程中的常见任务。在 Python 中,这可以在不利用临时变量的情况下实现 -

      a = 5 b = 10 a, b = b, a print(a) print(b)

      输出

      10 5

      在这里,a 和 b 的值通过将它们捆绑到一个元组中并随后以相反的顺序解压缩来切换。这是一种交换变量值的时尚而简洁的方法。




        反转字符串


        反转字符串是编程任务中的常见要求。这是一个简单的单行代码来修改 Python 中的字符串 -

          input_string = "Hello, World!" reversed_string = input_string[::-1] print(reversed_string)

          输出

          !dlroW ,olleH

          此代码使用 Python 的切片功能,步长为 -1,以反转输入字符串中的字符序列。




            查找列表中最常用的元素


            有时,您必须标识列表中最常用的元素。后续代码片段演示如何使用集合完成此操作。计数器类 −

              from collections import Counter your_list = [1, 2, 3, 2, 2, 4, 5, 6, 2, 7, 8, 2] most_common_element = Counter(your_list).most_common(1)[0][0] print(most_common_element)

              输出

              2

              Counter(your_list) 创建一个类似字典的对象,用于检查列表中每个组件的事件。most_common(1) 返回元组框架内最重要的访问元素的列表。然后我们使用 [0][0] 提取元素本身。




                平展嵌套列表


                平展嵌套列表涉及将记录列表更改为包含所有组件的单个列表。这可以通过使用列表推导式来执行 -

                  nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] flat_list = [item for sublist in nested_list for item in sublist] print(flat_list)

                  输出

                  [1, 2, 3, 4, 5, 6, 7, 8, 9]

                  此代码强调每个子列表,然后强调子列表中的每个事物,将每个事物添加到flat_list。




                    验证字符串是否为回文 


                    回文是向前和向后读取相同的字符串。为了确认字符串是否是回文,您将能够将初始字符串与其更改后的版本进行比较 -

                      input_string = "Able was I ere I saw Elba" is_palindrome = input_string.lower() == input_string[::-1].lower() print(is_palindrome)

                      输出

                      True

                      此代码片段最初将输入字符串转换为小写(以使比较不区分大小写),然后验证它是否等于其倒置版本。




                        在列表中查找所有唯一元素


                        如果你想在列表中找到所有独特的元素,你将能够利用Python的集合数据结构 -

                          your_list = [1, 2, 3, 2, 2, 4, 5, 6, 2, 7, 8, 2] unique_elements = list(set(your_list)) print(unique_elements)

                          输出

                          [1, 2, 3, 4, 5, 6, 7, 8]

                          set(your_list) 处理复制组件,list() 将集合更改回列表。




                            计算数的阶乘


                            数 n 的阶乘(表示为 n!)是所有正可积性小于或上升到 n 的项。您将使用基本的循环或递归来计算它,但这里有一个利用 Python 的 math.factorial() 工作的更简短的策略 -

                              import math n = 5 factorial = math.factorial(n) print(factorial)

                              输出

                              120

                              此代码部分导入数学模块并使用 factorial() 工作来计算 n 的阶乘。




                                检查数字是否为质数


                                素数是大于 1 的数,除了 1 和自身之外没有除数。为了验证数字是否为素数,您将使用以下代码部分 -

                                  def is_prime(number):    if number <2:       return False    for i in range(2, int(number ** 0.5) + 1):       if number % i == 0:           return False    return True print(is_prime(7))   print(is_prime(8))

                                  输出

                                  True False

                                  此代码表征一个单词 is_prime(数字),如果数字小于 2,则返回 False,然后确认该数字是否可以被 2 到数字平方根的任何数字整除(向上调整)。在找到任何除数时,它返回 False;别的东西,它返回正版。




                                    合并两个词典


                                    合并两个词典是一项常见的任务,尤其是在使用配置或设置时。您将能够使用 update() 策略或 {**dict1, **dict2} 语言结构组合两个词典。

                                      dict1 = {"apple": 1, "banana": 2} dict2 = {"orange": 3, "pear": 4} merged_dict = {**dict1, **dict2} print(merged_dict)

                                      输出

                                      {'apple': 1, 'banana': 2, 'orange': 3, 'pear': 4}

                                      此代码片段使用字典解包来合并字典 1 和字典 2。如果存在重复键,dict2 中的值将覆盖字典 1 中的值。




                                        从字符串中删除标点符号


                                        处理文本数据时,可能需要从字符串中删除标点符号。您可以使用 string.punctuation 常量和列表推导来实现此目的 -

                                          import string input_string = "Hello, Max! How are you?" no_punctuation_string = ''.join(char for char in input_string if char not in string.punctuation) print(no_punctuation_string)

                                          输出

                                          Hello Max How are you

                                          此代码部分导入字符串模块,强调input_string中的每个字符,并在 string.punctuation 中不在 string.punctuation 中时将其添加到no_punctuation_string。

                                          结论

                                          这十个 Python 代码片段可以帮助您更有效地解决常见的编程挑战。通过理解和利用这些片段,您可以节省时间并提高编码能力。请记住,实践会带来完美,所以不要犹豫,在日常编程任务中应用这些片段。


                                          本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!


                                          从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!


                                          本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。


                                          本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。


                                          若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。


                                          本文链接:https://www.10zhan.com/biancheng/10680.html

                                          标签: Python
                                          分享给朋友:

                                          “用于日常编程问题的 10 个 Python 代码片段” 的相关文章

                                          【说站】laravel实现自定义404页面并给页面传值

                                          【说站】laravel实现自定义404页面并给页面传值

                                          以 laravel5.8 为例,虽然有自带的404页面,但太简单,我们更希望能自定义404页面,将用户留在站点。实现的方式很简单,将自定义的视图文件命名为 404.blade.php,并放到 reso...

                                          【说站】Thymeleaf报错Error resolving template “XXX”

                                          【说站】Thymeleaf报错Error resolving template “XXX”

                                          修改了一下开源项目的目录结构访问突然报错Error resolving template “XXX”可能原因有如下三种:第一种可能:原因:在使用springboot的过程中,如果使用thymeleaf...

                                          【说站】用一句话就可以去除宝塔面板操作上的二次验证

                                          【说站】用一句话就可以去除宝塔面板操作上的二次验证

                                          用过宝塔的朋友应该都会发现,现在宝塔面板有些鸡肋的功能,删除文件、删除数据库、删除站点等操作都需要做计算题!不仅加了几秒的延时等待,还无法跳过!这时候就会有朋友在想,如何去除宝塔面板的二次验证,此篇文...

                                          【说站】利用Webhook实现Java项目自动化部署

                                          【说站】利用Webhook实现Java项目自动化部署

                                          用webhook就能实现Java项目自动部署,其实原理很简单。费话不多说,直接往下看教程。1. 创建gitee仓库并初始化2. 在linux安装git3. 在宝塔的软件的商店里下载Webhook4....

                                          【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

                                          【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

                                          今天在安装MySQL时出现starting the server失败,经过查询分析得出以下结论,记录一下操作步骤。原因分析:如果电脑是第一次安装MySQL,一般不会出现这样的报错。如下图所示。star...

                                          【说站】vagrant实现linux虚拟机的安装并配置网络

                                          【说站】vagrant实现linux虚拟机的安装并配置网络

                                          一、VirtualBox的下载和安装1、下载VirtualBox官网下载:https://www.virtualbox.org/wiki/Downloads我的电脑是Windows的,所以下载Wind...