ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

10 个编程问题,每个 Python 程序员都应该知道

2022-09-12 08:31:31  阅读:293  来源: 互联网

标签:10 程序员 Python 列表 字符串 dict print 方法


10 个编程问题,每个 Python 程序员都应该知道

编程语言每天都在发展,给程序员带来了便利。其中之一是 Python,最近的一项开发人员调查显示,Python 是继 JavaScript 之后第二受欢迎的编程语言。这是因为如果程序员选择 Python 作为他们喜欢的语言,他们可以获得很好的职业选择。此外,Python 语法比 C 或 C++ 更容易记住。在过去的几个月里,对 Python 开发人员的需求日益增加。

如果你是一名 Python 程序员或试图掌握它,这个博客特别适合你。在这里,我将列出一些可以帮助程序员轻松解决日常问题的要点。

现在让我们看看程序员可能面临的问题:

1.找到频率最高的元素

在这里,我们将有一个包含随机元素的列表。一些元素会重复,我们需要找到频率最高的元素。

 新列表 **=** [a,b,a,d,e,g,g,a,c,f,k,t,u,z,x,a]  
 **打印** ("最频繁的元素:", max(set(new_list),key= new_list.count))

这里的输出将是元素“a”,因为它重复了 4 次。

2. 从字符串列表中查找子字符串。

在下面的代码中,我们有一个字符串列表,我们将使用它们拥有的一个小关键字来搜索它们。就像在方法 1 中搜索 Meta 时,我们在输出中找到了 Mark Zuckerberg,因为它们都是一个字符串的一部分。 meta 只是一个子字符串。在方法 2 中也是如此,但风格不同。

 数据 **=** ["Python, 编程语言","Meta, Mark Zuckerberg","Sebastian Vettel, F1 赛车手","Alexa, Amazon"]# 方法 1name **=** “元” **为了** 数据 **在** 数据: **如果** data.find(名称)> **=** 0: **打印** (data)# 方法 2name **=** “维特尔” **为了** 数据 **在** 数据: **如果** 姓名 **在** 数据:打印(数据)

3. 合并字典

下面是两个字典,其中包含某些元素。在这里,我们将合并它们并向我们展示一个输出。第一种方法是字典在显示合并输出的结果中解包。在第二种方法中,我们复制结果中的第一个字典,然后用第二个字典更新它。在第三种方法中,我们使用了一种直接的方法,称为字典理解。

 dict_no1 **=** {'h':1,'e':2,'l':3,'l':4,'o':5}dict_no2 **=** {'s' : 6, 'i' : 7, 'r' : 8}# 方法1结果 **=** { ****** dict_no1, ****** dict_no2}print(result)#方法2结果 **=** dict_no1.copy()result.update(dict_no2) **打印** (结果)#方法3结果 **=** {核心价值 **为了** d **在** (dict_no1, dict_no2) **为了** 核心价值 **在** d.items()}打印(结果)

4.文件处理

当用户必须读取较大的逗号分隔值时,在 Python 中使用文件处理。下面的代码有一个名为“abc”的文件,我们在其中执行各种功能,例如打开文件、读取文件、读取单行、关闭文件和写入文件。

 # 打开一个文件  
 f = open('abc.txt')# 从文件中读取  
 f = open('abc.txt', 'r')# 读取整个文件  
 print(f.read())# 读取单行  
 print(f.readline())# 写入文件  
 f = open('abc.txt', 'w')  
 f.write('写入文件\n')#关闭文件  
 f.close()

5. 对字典列表进行排序

在下面的代码中,我们有一个包含列表的字典,其中包含有关某些人的信息。我们将根据他们的“id”对列表进行排序,您可以根据需要进行任何操作。我们在这里使用 sort() 或 sorted() 功能来执行任务。

 人= [  
 {  
 “名称”:“安德鲁”,  
 “年龄”:25,  
 “身份证”:72365  
 },  
 {  
 '名称' : '账单',  
 “年龄”:34,  
 “身份证”:55443  
 },  
 {  
 “名称”:“卡西”,  
 “年龄”:22,  
 'id':63257  
 }  
 ]#方法一  
 person.sort(key=lambda item: item.get("id"))  
 print(person)# 方法二  
 person = sorted(person, key=lambda item: item.get("id"))  
 打印(人)

6.计算执行时间

下面的代码将计算执行时间。我们使用了时间库。我们测量代码的运行时间,该代码将打印所有偶数直到 10,然后记录执行时间。

 import timestart = time.time()# 打印所有偶数直到 10  
 对于范围内的 i (10):  
 如果我 % 2 == 0:  
 print(i, end = " ")end = time.time()  
 time_taken = 结束 — 开始  
 print(“\n所用时间: “, time_taken)

7. 错误处理

在错误处理中,我们使用 try-catch 定理,如果其中一种可能性不匹配,则会突然停止。在下面的代码中,我们将划分两个数字,因此如果第二个数字为零,则此代码将引发错误,而不是执行它并提醒用户。

 no1, no2 = 4,0  
 尝试:  
 打印(no1 / no2)  
 除了 ZeroDivisionError:  
 print("除零是不可能的!")  
 最后:  
 print("终于阻塞了。")

8. 字符串格式化

在字符串格式化中,我们修改字符串,有几种方法可以做到这一点。在下面的代码中提到了其中的一些。在第一种方法中,使用了基本连接,它只是将字符串加在一起。在第二种方法中,我们使用 f 字符串,其中变量名写在大括号中并在运行时更改。在第三种方法中,我们使用 format() 函数,它将要插入到字符串中的字符串或变量作为参数,并将其放置在看到大括号的任何位置。在最后一种方法中,我们使用“%s”表示它是一个字符串。

 语言 = "C++"# 方法 1  
 print(language + " 是我最喜欢的编程语言。")# 方法二  
 print(f"I code in {language}")# 方法 3  
 print("我喜欢 {} 编程语言。".format(language))# 方法四  
 print("%s 很容易学。" % (language))

9. 使用 If-else 进行列表理解。

列表理解对用户非常有利,因为它有助于使代码更加复杂和可读。在下面的代码中,我们使用 if-else 条件找到 8 的倍数,然后是 2 和 4 的倍数。

 my_list = ['8 的倍数' if i % 8== 0  
 else '2 的倍数' if i % 2 == 0  
 else '4 的倍数' if i % 4== 0  
 else i for i in range(1, 20)]  
 打印(我的列表)

10. 扁平化列表。

要展平包含多个列表的列表,我们可以使用 append() 功能和 extent() 功能。它们唯一的区别是 append() 使用单个变量添加到

 我的列表 = [10,12,36,[41,59,63],[77],81,93]  
 平= []  
 对于我在我的列表中:  
 if isinstance(i, list): flat.extend(i)  
 否则:flat.append(i)  
 打印(平面)

因此,这些是程序员几乎每天都会遇到的一些 Python 问题。我希望你喜欢这个博客!

谢谢阅读。如果您觉得这篇文章有用,请不要忘记鼓掌并与您的朋友和同事分享。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/30276/21411208

标签:10,程序员,Python,列表,字符串,dict,print,方法
来源: https://www.cnblogs.com/amboke/p/16685419.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有