百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

【Python备忘单】Python编程的快速参考指南

bigegpt 2025-03-05 13:34 8 浏览

01 — 数据类型

int_num = 42
float_num = 3.14
string_var = "Hello, Python!"
bool_var = True

02 — 变量和赋值

x = 10
y = "Python"

03 — 列表和元组

my_list = [1, 2, 3, "Python"]
my_tuple = (1, 2, 3, "Tuple")

04 — 字典

my_dict = {'name': 'John', 'age': 25, 'city': 'Pythonville'}

05 — 控制流程

if x > 0:
    print("Positive")
elif x == 0:
    print("Zero")
else:
    print("Negative")
for item in my_list:
    print(item)
while condition:
    # code

06 — 函数

def greet(name="User"):
    return f"Hello, {name}!"
result = greet("John")

07 — 类和对象

class Dog:
    def __init__(self, name):
        self.name = name
def bark(self):
        print("Woof!")
my_dog = Dog("Buddy")
my_dog.bark()

08 — 文件处理

with open("file.txt", "r") as file:
    content = file.read()
with open("new_file.txt", "w") as new_file:
    new_file.write("Hello, Python!")

09 — 异常处理

try:
    result = 10 / 0
except ZeroDivisionError:
    print("Cannot divide by zero!")
finally:
    print("Execution completed.")

10 — 库和模块

import math
from datetime import datetime
result = math.sqrt(25)
current_time = datetime.now()

11 — 列表推导式

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

12 — Lambda 函数

add = lambda x, y: x + y
result = add(2, 3)

13 — 虚拟环境

# Create a virtual environment
python -m venv myenv
# Activate the virtual environment
source myenv/bin/activate  # On Unix or MacOS
myenv\Scripts\activate  # On Windows
# Deactivate the virtual environment
deactivate

14 — 包管理

# Install a package
pip install package_name
# List installed packages
pip list
# Create requirements.txt
pip freeze > requirements.txt
# Install packages from requirements.txt
pip install -r requirements.txt

15 — 使用 JSON

import json
# Convert Python object to JSON
json_data = json.dumps({"name": "John", "age": 25})
# Convert JSON to Python object
python_obj = json.loads(json_data)

16 — 正则表达式

import re
pattern = r'\d+'  # Match one or more digits
result = re.findall(pattern, "There are 42 apples and 123 oranges.")

17 — 处理日期

from datetime import datetime, timedelta
current_date = datetime.now()
future_date = current_date + timedelta(days=7)

18 — 列表操作

numbers = [1, 2, 3, 4, 5]
# Filter
evens = list(filter(lambda x: x % 2 == 0, numbers))
# Map
squared = list(map(lambda x: x**2, numbers))
# Reduce (requires functools)
from functools import reduce
product = reduce(lambda x, y: x * y, numbers)

19 — 字典操作

my_dict = {'a': 1, 'b': 2, 'c': 3}
# Get value with default
value = my_dict.get('d', 0)
# Dictionary comprehension
squared_dict = {key: value**2 for key, value in my_dict.items()}

20 — 线程并发

import threading
def print_numbers():
    for i in range(5):
        print(i)
thread = threading.Thread(target=print_numbers)
thread.start()

21 — 与 Asyncio 的并发

import asyncio
async def print_numbers():
    for i in range(5):
        print(i)
        await asyncio.sleep(1)
asyncio.run(print_numbers())

22 — 用 Beautiful Soup 进行网页抓取

from bs4 import BeautifulSoup
import requests
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
title = soup.title.text

23 — 使用 Flask 的 RESTful API

from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/api/data', methods=['GET'])
def get_data():
    data = {'key': 'value'}
    return jsonify(data)
if __name__ == '__main__':
    app.run(debug=True)

24 — 使用 unittest 进行单元测试

import unittest
def add(x, y):
    return x + y
class TestAddition(unittest.TestCase):
    def test_add_positive_numbers(self):
        self.assertEqual(add(2, 3), 5)
if __name__ == '__main__':
    unittest.main()

25 — 数据库与 SQLite 的交互

import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# Execute SQL query
cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)')
# Commit changes
conn.commit()
# Close connection
conn.close()

26 — 文件处理

# Writing to a file
with open('example.txt', 'w') as file:
    file.write('Hello, Python!')
# Reading from a file
with open('example.txt', 'r') as file:
    content = file.read()

27 — 错误处理

try:
    result = 10 / 0
except ZeroDivisionError as e:
    print(f"Error: {e}")
except Exception as e:
    print(f"Unexpected Error: {e}")
else:
    print("No errors occurred.")
finally:
    print("This block always executes.")

28 — 使用 JSON

import json
data = {'name': 'John', 'age': 30}
# Convert Python object to JSON
json_data = json.dumps(data)
# Convert JSON to Python object
python_object = json.loads(json_data)

29 - Python 装饰器

def decorator(func):
    def wrapper():
        print("Before function execution")
        func()
        print("After function execution")
    return wrapper
@decorator
def my_function():
    print("Inside the function")
my_function()

30 — 使用枚举

from enum import Enum
class Color(Enum):
    RED = 1
    GREEN = 2
    BLUE = 3
print(Color.RED)

31 — 使用集合

set1 = {1, 2, 3}
set2 = {3, 4, 5}
# Union
union_set = set1 | set2
# Intersection
intersection_set = set1 & set2
# Difference
difference_set = set1 - set2

32 — 列表推导式

numbers = [1, 2, 3, 4, 5]
# Squares of even numbers
squares = [x**2 for x in numbers if x % 2 == 0]

33 — Lambda 函数

add = lambda x, y: x + y
result = add(3, 5)

34 — 使用 Concurrent.futures 进行线程化

from concurrent.futures import ThreadPoolExecutor
def square(x):
    return x**2
with ThreadPoolExecutor() as executor:
    results = executor.map(square, [1, 2, 3, 4, 5])

35 — 使用 gettext 进行国际化 (i18n)

import gettext
# Set language
lang = 'en_US'
_ = gettext.translation('messages', localedir='locale', languages=[lang]).gettext
print(_("Hello, World!"))

36 — 虚拟环境

# Create a virtual environment
python -m venv myenv
# Activate virtual environment
source myenv/bin/activate  # On Unix/Linux
myenv\Scripts\activate  # On Windows
# Deactivate virtual environment
deactivate

37 — 使用日期

from datetime import datetime, timedelta
now = datetime.now()
# Format date
formatted_date = now.strftime('%Y-%m-%d %H:%M:%S')
# Add days to a date
future_date = now + timedelta(days=7)

38 — 使用字典

my_dict = {'name': 'John', 'age': 30}
# Get value with default
age = my_dict.get('age', 25)
# Iterate over keys and values
for key, value in my_dict.items():
    print(f"{key}: {value}")

39 — 正则表达式

import re
text = "Hello, 123 World!"
# Match numbers
numbers = re.findall(r'\d+', text)

40 — 使用生成器

def square_numbers(n):
    for i in range(n):
        yield i**2
squares = square_numbers(5)

41 — 与 SQLite 的数据库交互

import sqlite3
# Connect to SQLite database
conn = sqlite3.connect('mydatabase.db')
cursor = conn.cursor()
# Execute SQL query
cursor.execute('SELECT * FROM mytable')

42 — 使用 ZIP 文件

import zipfile
with zipfile.ZipFile('archive.zip', 'w') as myzip:
    myzip.write('file.txt')
with zipfile.ZipFile('archive.zip', 'r') as myzip:
    myzip.extractall('extracted')

43 — 使用请求和 BeautifulSoup 进行网页抓取

import requests
from bs4 import BeautifulSoup
url = 'https://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# Extract data from HTML
title = soup.title.text

44 — 使用 smtplib 发送电子邮件

import smtplib
from email.mime.text import MIMEText
# Set up email server
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
# Log in to email account
server.login('your_email@gmail.com', 'your_password')
# Send email
msg = MIMEText('Hello, Python!')
msg['Subject'] = 'Python Email'
server.sendmail('your_email@gmail.com', 'recipient@example.com', msg.as_string())

45 — 使用 JSON 文件

import json
data = {'name': 'John', 'age': 30}
# Write to JSON file
with open('data.json', 'w') as json_file:
    json.dump(data, json_file)
# Read from JSON file
with open('data.json', 'r') as json_file:
    loaded_data = json.load(json_file)

相关推荐

程序员请收好:10个非常有用的 Visual Studio Code 插件

一个插件列表,可以让你的程序员生活变得轻松许多。作者|Daan译者|Elle出品|CSDN(ID:CSDNnews)以下为译文:无论你是经验丰富的开发人员还是刚刚开始第一份工作的初级开发人...

PADS在WIN10系统中菜单显示不全的解决方法

决定由AD转PADS,打开发现菜单显示不正常,如下图所示:这个是由于系统的默认字体不合适导致,修改一下系统默认字体即可,修改方法如下:打开开始菜单-->所有程序-->Windows系统--...

一文讲解Web前端开发基础环境配置

先从基本的HTML语言开始学习。一个网页的所有内容都是基于HTML,为了学好HTML,不使用任何集成工具,而用一个文本编辑器,直接从最简单的HTML开始编写HTML。先在网上下载notepad++文...

TCP/IP协议栈在Linux内核中的运行时序分析

本文主要是讲解TCP/IP协议栈在Linux内核中的运行时序,文章较长,里面有配套的视频讲解,建议收藏观看。1Linux概述  1.1Linux操作系统架构简介Linux操作系统总体上由Linux...

从 Angular Route 中提前获取数据

#头条创作挑战赛#介绍提前获取意味着在数据呈现在屏幕之前获取到数据。本文中,你将学到,在路由更改前怎么获取到数据。通过本文,你将学会使用resolver,在AngularApp中应用re...

边做游戏边划水: 基于浅水方程的水面交互、河道交互模拟方法

以下文章来源于腾讯游戏学堂,作者Byreave篇一:基于浅水方程的水面交互本文主要介绍一种基于浅水方程的水体交互算法,在基本保持水体交互效果的前提下,实现了一种极简的水面模拟和物体交互方法。真实感的...

Nacos介绍及使用

一、Nacos介绍Nacos是SpringCloudAlibaba架构中最重要的组件。Nacos是一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理平台,提供注册中心、配置中心和动态DNS...

Spring 中@Autowired,@Resource,@Inject 注解实现原理

使用案例前置条件:现在有一个Vehicle接口,它有两个实现类Bus和Car,现在还有一个类VehicleService需要注入一个Vehicle类型的Bean:publicinte...

一文带你搞懂Vue3 底层源码

作者:妹红大大转发链接:https://mp.weixin.qq.com/s/D_PRIMAD6i225Pn-a_lzPA前言vue3出来有一段时间了。今天正式开始记录一下梗vue3.0.0-be...

一线开发大牛带你深度解析探讨模板解释器,解释器的生成

解释器生成解释器的机器代码片段都是在TemplateInterpreterGenerator::generate_all()中生成的,下面将分小节详细展示该函数的具体细节,以及解释器某个组件的机器代码...

Nacos源码—9.Nacos升级gRPC分析五

大纲10.gRPC客户端初始化分析11.gRPC客户端的心跳机制(健康检查)12.gRPC服务端如何处理客户端的建立连接请求13.gRPC服务端如何映射各种请求与对应的Handler处理类14.gRP...

聊聊Spring AI的Tool Calling

序本文主要研究一下SpringAI的ToolCallingToolCallbackorg/springframework/ai/tool/ToolCallback.javapublicinter...

「云原生」Containerd ctr,crictl 和 nerdctl 命令介绍与实战操作

一、概述作为接替Docker运行时的Containerd在早在Kubernetes1.7时就能直接与Kubelet集成使用,只是大部分时候我们因熟悉Docker,在部署集群时采用了默认的dockers...

在MySQL登录时出现Access denied for user ~~ (using password: YES)

Windows~~~在MySQL登录时出现Accessdeniedforuser‘root‘@‘localhost‘(usingpassword:YES),并修改MySQL密码目录适用...

mysql 8.0多实例批量部署script

背景最近一个项目上,客户需要把阿里云的rdsformysql数据库同步至线下,用作数据的灾备,需要在线下的服务器上部署mysql8.0多实例,为了加快部署的速度,写了一个脚本。解决方案#!/bi...