Python实用的27个实例,涵盖从基础到进阶的所有领域!

news2024/11/14 21:38:18

    Python 是一种广泛使用的高级编程语言,以其简洁的语法和丰富的库支持而受到开发者们的喜爱。以下列出了 27 个实用的 Python 实例,涵盖从基础到进阶的不同领域,帮助你提升编程技能。

1. 打印 "Hello, World!"

print("Hello, World!")

2. 计算两个数的和

num1 = 10  
num2 = 20  
sum = num1 + num2  
print("Sum:", sum)

3. 斐波那契数列的前 N 项

def fibonacci(n):  
    a, b = 0, 1  
    series = []  
    for i in range(n):  
        series.append(a)  
        a, b = b, a + b  
    return series  
  
print(fibonacci(10))

4. 找出列表中的最大和最小值

numbers = [10, 3, 5, 7, 9, 1]  
print("Max:", max(numbers))  
print("Min:", min(numbers))

5. 列表去重

numbers = [1, 2, 2, 3, 4, 4, 5]  
unique_numbers = list(set(numbers))  
print(unique_numbers)

6. 列表排序

numbers = [3, 1, 4, 1, 5, 9]  
numbers.sort()  
print(numbers)

7. 反转列表

numbers = [1, 2, 3, 4, 5]  
numbers.reverse()  
print(numbers)

8. 字典操作:添加、删除和查找

person = {'name': 'John', 'age': 30}  
person['city'] = 'New York'  # 添加  
print(person)  
  
del person['age']  # 删除  
print(person)  
  
print(person.get('name', 'Unknown'))  # 查找

9. 列表推导式

squares = [x**2 for x in range(10)]  
print(squares)

10. 读取和写入文件

# 写入  
with open('example.txt', 'w') as file:  
    file.write("Hello, Python!\n")  
  
# 读取  
with open('example.txt', 'r') as file:  
    content = file.read()  
    print(content)

11. 使用函数计算阶乘

def factorial(n):  
    if n == 0:  
        return 1  
    else:  
        return n * factorial(n-1)  
  
print(factorial(5))

12. 字符串格式化

name = "John"  
age = 30  
print(f"My name is {name} and I am {age} years old.")

13. 列表中的元素出现次数

from collections import Counter  
words = ['apple', 'banana', 'apple', 'orange', 'banana', 'grape']  
print(Counter(words))

14. 列表切片

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]  
print(numbers[2:5])  # 切片操作

15. 遍历字典

person = {'name': 'John', 'age': 30, 'city': 'New York'}  
for key, value in person.items():  
    print(key, value)

16. 使用 enumerate 遍历列表

fruits = ['apple', 'banana', 'cherry']  
for index, fruit in enumerate(fruits):  
    print(index, fruit)

17. 列表生成器

def gen_squares(n):  
    for i in range(n):  
        yield i**2  
  
for square in gen_squares(5):  
    print(square)

18. 使用 map 函数

numbers = [1, 2, 3, 4, 5]  
squared = list(map(lambda x: x**2, numbers))  
print(squared)

19. 使用 filter 函数

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]  
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))  
print(even_numbers)

20. 递归打印目录结构

import os  
  
def print_directory_contents(sPath):  
    for sChild in os.listdir(sPath):  
        sChildPath = os.path.join(sPath,sChild)  
        if os.path.isdir(sChildPath):  
            print_directory_contents(sChildPath)  
        else:  
            print(sChildPath)  
  
print_directory_contents('.')

21. 使用 re 模块进行正则表达式匹配

import re  
  
text = "The rain in Spain falls mainly in the plain."  
match = re.search(r"(\b\w+ain\b)", text)  
if match:  
    print("Found", match.group())

22. 网络请求(使用 requests 库)

import requests  
  
response = requests.get('https://api.github.com/users/github')  
print(response.json())

23. 发送邮件(使用 smtplib

import smtplib  
from email.mime.text import MIMEText  
from email.mime.multipart import MIMEMultipart  
  
msg = MIMEMultipart()  
msg['From'] = "your-email@example.com"  
msg['To'] = "recipient-email@example.com"  
msg['Subject'] = "Hello Email"  
  
msg.attach(MIMEText("This is the body of the email", 'plain'))  
  
server = smtplib.SMTP('smtp.example.com', 587)  
server.starttls()  
server.login("your-email@example.com", "yourpassword")  
text = msg.as_string()  
server.sendmail("your-email@example.com", ["recipient-email@example.com"], text)  
server.quit()

24. 使用 pandas 处理数据

import pandas as pd  
  
data = {'Name': ['Tom', 'Jane', 'Steve', 'Ricky'],  
        'Age': [28, 34, 29, 42]}  
df = pd.DataFrame(data)  
print(df)

25. 简单的 Web 服务器(使用 http.server

# 在命令行中运行:python -m http.server 8000

26. 加密和解密数据(使用 cryptography 库)

from cryptography.fernet import Fernet  
  
key = Fernet.generate_key()  
cipher_suite = Fernet(key)  
cipher_text = cipher_suite.encrypt(b"A really secret message. Not for prying eyes.")  
print(cipher_text)  
plain_text = cipher_suite.decrypt(cipher_text)  
print(plain_text)

 27. 使用 matplotlib 绘图

import matplotlib.pyplot as plt  
  
x = [1, 2, 3, 4, 5]  
y = [1, 4, 9, 16, 25]  
  
plt.plot(x, y)  
plt.title("Simple Plot")  
plt.xlabel("x axis label")  
plt.ylabel("y axis label")  
plt.show()

这些实例涵盖了 Python 编程的多个方面,从基础语法到高级库的使用,适合不同水平的 Python 学习者。

Python学习资料(项目源码、安装包、电子书、视频教程)已经打包好啦! 需要的小伙伴下方链接领取哦!或者下方扫码拿走!

【点击领取】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2138514.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

企业微信如何利用群聊机器人定时推送消息

背景:公司其他部门有在群聊中新建机器人并定时推送消息的需求,webhook已准备好 1、准备一台服务器或者虚拟机,编写脚本 [rootlocalhost opt]# vim crontab.sh curl https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key4d38964b-04f2-44…

【Arduino】国产arduino驱动

买的国产 arduino,如果 windows识别不到。或者用 Arduino自带的Driver程序仍不能驱动。又不想用驱动精灵,可以直接安装驱动程序 99%大概率是CH340芯片,驱动下载连接如下。 你可以从 WCH 官方网站 下载并安装 CH340 驱动程序 安装即可用&am…

进阶岛 renwu5: 茴香豆:企业级知识问答工具实践闯关任务

进阶岛 renwu5: 茴香豆:企业级知识问答工具实践闯关任务 renwu: https://kkgithub.com/InternLM/Tutorial/blob/camp3/docs/L2/Huixiangdou/task.md 在 InternStudio 中利用 Internlm2-7b 搭建标准版茴香豆知识助手,并使用 Gradio 界面完成 2 轮问答&a…

什么是java的spi?

Java SPI(Service Provider Interface)是一种提供服务发现机制的设计模式,允许在运行时动态地发现、加载和替换服务的实现。SPI机制的核心思想是:通过接口定义服务,并且使用外部的实现类来提供该服务的具体功能。 目录…

这些学校就业不错且好考,努努力就能上岸的江浙沪学校!

这些学校就业不错且好考,努努力就能上岸,搭配历年数据,供大家参考~ 目录 ① 南京信息工程大学 ② 南京工业大学 ③ 浙江工业大学 ④ 中国计量大学 ⑤ 上海电力大学 ① 南京信息工程大学 复试线招生人数 双一流高校,金牛湖…

3.4.2 __ipipe_init_early之fixup_percpu_data()

点击查看系列文章 》 Interrupt Pipeline系列文章大纲-CSDN博客 3.4.2 __ipipe_init_early之fixup_percpu_data() 这个函数只有在CPU是SMP对称多core的情况下,才会真正运作,否则就是个空函数。 #ifdef CONFIG_SMPstatic inline void fixup_percpu_data…

约瑟夫环和一元多项式修正版

这里先附上上一篇博文的链接大家可以对比着看&#xff0c;错误已经改正https://blog.csdn.net/2302_78946488/article/details/141751514?spm1001.2014.3001.5501 约瑟夫环 以下是详细代码 //约瑟夫环 #include<stdio.h> #include<stdlib.h> //建立链表结点 str…

哈夫曼编码——CSP-J1真题讲解

假设有一组字符{a,b,c,d,e,f}&#xff0c;对应的频率分别为5%、9%、12%、13%、16%、45%。请问以下哪个选项是字符a,b,c,d,e,f分别对应的一组哈夫曼编码?( ) A. 1111&#xff0c;1110&#xff0c;101&#xff0c;100&#xff0c;110&#xff0c;0 B. 1010&#xff0c;1001&…

视频工具EasyDarwin生成RTMP给WVP拉流列表

效果 运行 登录 http://127.0.0.1:10086/ admin/admin 创建RTMP服务

离线数仓ODS层准备

离线数仓ODS层设计-Operational Data Store ODS层设计要点ODS层-日志表-json表SERDEhive导入json表&#xff08;hive表和json表 字段不一致 解决方案&#xff09; 复杂数据类型日志表-建表语句 ODS层设计要点 &#xff08;1&#xff09;ODS层的表结构设计依托于从业务系统同步…

Qt 菜单栏、工具栏、状态栏、标签、铆接部件(浮动窗口) 设置窗口核心部件(文本编辑控件)的基本使用

效果 代码 #include "mainwindow.h" #include "ui_mainwindow.h" #include<QToolBar> #include<QDebug> #include<QPushButton> #include<QStatusBar> #include<QLabel> #include<QDockWidget> #include<QTextEdi…

第1步win10宿主机与虚拟机通过NAT共享上网互通

VM的CentOS采用NAT共用宿主机网卡宿主机器无法连接到虚拟CentOS 要实现宿主机与虚拟机通信&#xff0c;原理就是给宿主机的网卡配置一个与虚拟机网关相同网段的IP地址&#xff0c;实现可以互通。 1、查看虚拟机的IP地址 2、编辑虚拟机的虚拟网络的NAT和DHCP的配置&#xff0c;…

springboot3.X版本集成mybatis遇到的问题

由于我本地springboot为3.x版本&#xff0c;如下图所示&#xff0c;最新版本 当我参照如下搜索的内容去集成mybatis的时候&#xff0c;会出现各种各样的报错 最根本的原因是搜出来的配置是参照springboot2.X版本&#xff0c;当我们使用springboot3.x版本之后&#xff0c;需要配…

【C++】STL--string(上)

前言 C语言中&#xff0c;字符串是以\0结尾的一些字符的集合&#xff0c;为了操作方便&#xff0c;C标准库中提供了一些str系列的库函数&#xff0c;但是这些库函数与字符串是分离开的&#xff0c;不太符合OOP的思想&#xff0c;而且底层空间需要用户自己管理&#xff0c;稍不留…

8个前端库-小且美

前提&#xff1a;前端有很多小而美的库&#xff0c;接入成本很低又能满足日常开发需求&#xff0c;同时无论是 npm 方式引入还是直接复制到本地使用都可以。 1.radash radash相比与 lodash&#xff0c;更加面向现代&#xff0c;提供更多新功能&#xff08;tryit&#xff0c;…

前端层面----监控与埋点

前言&#xff1a; 站在产品的视角&#xff0c;经常会问如下几个问题&#xff1a; 产品有没有用户使用 用户用得怎么样 系统会不会经常出现异常 如何更好地满足用户需求服务用户 当站在技术视角时&#xff0c;经常会问如下几个问题&#xff1a; 系统出现异常的频率如何 异常…

MyBatis中多对一关系的三种处理方法

目录 MyBatis中多对一关系的三种处理方法 1.通过级联属性赋值 1&#xff09;mapper 2&#xff09;mapper.xml 3&#xff09;测试代码 4&#xff09;测试结果 2.通过标签 1&#xff09;mapper 2&#xff09;mapper.xml 3&#xff09;测试代码 4&#xff09;测试结果 3.分步查询 …

【技术调研】三维(4)-ThreeJs阴影投射、光线投射及案例

阴影投射 阴影是灯光经过物体后产生的&#xff0c;几个关键的设置&#xff1a; 灯光属性设置&#xff1a;.castShadow : Boolean 。此属性设置为 true 灯光将投射阴影。注意&#xff1a;这样做的代价比较高&#xff0c;需要通过调整让阴影看起来正确。 查看 DirectionalLight…

STM32(十四):USART串口数据包

HEX数据包 0xFF包头&#xff0c;0xFE包尾。 如果数据和包头包尾重复&#xff0c;可能会引起误判。 解决办法&#xff1a; 1. 限制载荷数据的范围 2. 如果无法避免载荷数据和包头包尾重复&#xff0c;就使用尽量使用固定长度数据包。 包头 ‘\r\n 包尾 在载荷数据中间可以出现…

代码23. 合并 K 个升序链表

模拟面试的时候没做出来&#xff0c;心碎了。 题目链接 . - 力扣&#xff08;LeetCode&#xff09; 自己的思考 无思考&#xff0c;直接看答案吧。 正确答案 其实写还是自己写的&#xff0c;看了下题解的思路。 第一种 思路简单&#xff0c;两两合并&#xff0c;注意事项已…