从入门到高手的99个python案例(2)
51. 列表和数组比较 - 列表通用,NumPy数组高效。
import numpy as np normal_list = [1, 2, 3]
np_array = np.array([1, 2, 3])
print(np_array.shape) # 输出 (3,), 数组有形状信息
52. Python的内置模块datetime - 处理日期和时间。
from datetime import datetime
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))
53. Python的os模块 - 操作文件和目录。
import os
print(os.getcwd()) # 输出当前工作目录
54. 列表推导式中的条件和循环 - 结合使用。
evens = [x for x in range(10) if x % 2 == 0 for y in range(5) if y % 2 == 0]
print(evens)
55. 迭代器和生成器的使用场景 - 数据处理和节省内存。
# 使用生成器处理大文件
def read_large_file(file_path, chunk_size=1024): with open(file_path, "r") as file: while True: chunk = file.read(chunk_size) if not chunk: break yield chunk for line in read_large_file("large.txt"): process(line)
56. zip()函数 - 同时遍历多个序列。
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
pairs = zip(names, ages)
print(list(pairs)) # 输出 [('Alice', 25), ('Bob', 30), ('Charlie', 35)]
57. enumerate()函数 - 为列表元素添加索引。
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits): print(f"{index}: {fruit}")
58. itertools模块 - 提供高效迭代工具。
from itertools import product
result = product("ABC", repeat=2)
print(list(result)) # 输出 [('A', 'A'), ('A', 'B'), ('A', 'C'), ..., ('C', 'C')]
59. json模块 - 序列化和反序列化数据。
import json
data = {"name": "Alice", "age": 25}
json_data = json.dumps(data)
print(json_data)
60. 递归函数 - 用于解决分治问题。
def factorial(n): if n == 0 or n == 1: return 1 else: return n * factorial(n - 1) print(factorial(5)) # 输出 120
61. os.path模块 - 文件路径处理。
import os.path
path = "/home/user/documents"
print(os.path.exists(path)) # 输出 True 或 False
62. random模块 - 随机数生成。
import random
random_number = random.randint(1, 10)
print(random_number)
63. re模块 - 正则表达式操作。
import re
text = "Today is 2023-04-01"
match = re.search(r"\d{4}-\d{2}-\d{2}", text)
print(match.group()) # 输出 "2023-04-01"
64. requests库 - 发送HTTP请求。
import requests
response = requests.get("https://api.example.com")
print(response.status_code)
65. Pandas库 - 大数据处理。
import pandas as pd
df = pd.DataFrame({"Name": ["Alice", "Bob"], "Age": [25, 30]})
print(df)
66. matplotlib库 - 数据可视化。
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.show()
67. logging模块 - 日志记录。
import logging
logger = logging.getLogger(__name__)
logger.info("This is an info message")
68. asyncio库 - 异步编程。
import asyncio
async def slow_task(): await asyncio.sleep(1) return "Task completed" loop = asyncio.get_event_loop()
result = loop.run_until_complete(slow_task())
print(result)
69. contextlib模块 - 非阻塞上下文管理。
from contextlib import asynccontextmanager
@asynccontextmanager
async def acquire_lock(lock): async with lock: yield async with acquire_lock(lock): # do something
70. asyncio.gather - 异步并发执行。
tasks = [asyncio.create_task(task) for task in tasks_to_run]
results = await asyncio.gather(*tasks)
71. asyncio.sleep - 异步等待一段时间。
await asyncio.sleep(2) # 程序在此暂停2秒
72. asyncio.wait - 等待多个任务完成。
done, pending = await asyncio.wait(tasks, timeout=10)
73. asyncio.subprocess - 异步执行外部命令。
import asyncio.subprocess as sp
proc = await sp.create_subprocess_exec("ls", "-l")
await proc.communicate()
74. concurrent.futures库 - 多线程/进程执行。
from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutor with ThreadPoolExecutor() as executor: results = executor.map(function, arguments)
75. timeit模块 - 测试代码执行速度。
import timeit
print(timeit.timeit("your_code_here", globals=globals()))
76. pickle模块 - 序列化和反序列化对象。
import pickle
serialized = pickle.dumps(obj)
deserialized = pickle.loads(serialized)
77. logging.handlers模块 - 多种日志输出方式。
handler = RotatingFileHandler("app.log", maxBytes=1000000)
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
handler.setFormatter(formatter)
logger.addHandler(handler)
78. asyncio.Queue - 异步队列。
queue = asyncio.Queue()
await queue.put(item)
result = await queue.get()
79. asyncio.Event - 异步信号量。
event = asyncio.Event()
event.set() # 设置信号
await event.wait() # 等待信号
80. asyncio.Lock - 互斥锁,防止并发修改。
async with await asyncio.Lock(): # 获取锁后执行 critical_section()
81. asyncio.gather和asyncio.wait_for的区别 - 异步任务管理。
-
gather: 并行执行多个任务,等待所有任务完成。 -
wait_for: 等待单个任务完成,其他任务继续运行。
82. asyncio.sleep和asyncio.sleep_after - 异步延时和定时任务。
-
sleep: 直接暂停当前协程。 -
sleep_after: 定义一个延迟后执行的任务。
83. aiohttp库 - HTTP客户端库。
import aiohttp
async with aiohttp.ClientSession() as session: async with session.get("https://example.com") as response: data = await response.text()
84. asyncio.shield - 防止被取消任务中断。
async def task(): await shield(some_long_running_task()) # 如果外部取消任务,task将继续运行,不会影响内部任务
asyncio.create_task(task())
85. asyncio.run - 简化异步程序执行。
asyncio.run(main_coroutine())
86. asyncio.iscoroutinefunction - 检查是否为协程函数。
if asyncio.iscoroutinefunction(some_function): await some_function()
87. asyncio.all_tasks - 获取所有任务。
tasks = asyncio.all_tasks()
for task in tasks: task.cancel()
88. asyncio.wait_for和asyncio.timeout - 设置超时限制。
try: result = await asyncio.wait_for(some_task, timeout=5.0)
except asyncio.TimeoutError: print("Task timed out")
89. asyncio.sleep_timeout - 异步睡眠并设置超时。
await asyncio.sleep_timeout(10, asyncio.TimeoutError)
90. asyncio.current_task - 获取当前正在执行的任务。
current_task = asyncio.current_task()
print(current_task)
91. asyncio.sleep的超时支持 - asyncio.sleep现在接受超时参数。
try: await asyncio.sleep(1, timeout=0.5) # 如果超过0.5秒还没完成,则会抛出TimeoutError
except asyncio.TimeoutError: print("Sleep interrupted")
92. asyncio.shield的高级用法 - 可以保护整个协程。
@asyncio.coroutine
def protected_coroutine(): try: await some_task() except Exception as e: print(f"Error occurred: {e}") # 使用shield保护,即使外部取消任务,也会继续处理错误 asyncio.create_task(protected_coroutine())
93. asyncio.wait的回调函数 - 使用回调函数处理完成任务。
done, _ = await asyncio.wait(tasks, callback=handle_completed_task)
94. asyncio.gather的返回值 - 可以获取所有任务的结果。
results = await asyncio.gather(*tasks)
95. asyncio.Queue的get_nowait - 不阻塞获取队列元素。
if not queue.empty(): item = queue.get_nowait()
else: item = await queue.get()
96. asyncio.Event的clear - 清除事件状态。
event.clear()
await event.wait() # 现在需要再次调用set()来触发
97. asyncio.Event的is_set - 检查事件是否已设置。
if event.is_set(): print("Event is set")
98. asyncio.subprocess.PIPE - 连接到子进程的输入/输出管道。
proc = await asyncio.create_subprocess_exec( "python", "-c", "print('Hello from child')", stdout=asyncio.subprocess.PIPE
)
output, _ = await proc.communicate()
print(output.decode())
99. asyncio.run_coroutine_threadsafe - 在子线程中执行协程。
loop = asyncio.get_running_loop()
future = loop.run_coroutine_threadsafe(some_async_coroutine(), thread_pool)
result = await future.result()
好了,今天就这些了,希望对大家有帮助。都看到这了,点个赞再走吧~
最后这里免费分享给大家一份Python全台学习资料,包含视频、源码。课件,希望能帮到那些不满现状,想提升自己却又没有方向的朋友,也可以和我一起来学习交流呀。
编程资料、学习路线图、源代码、软件安装包等!【点击这里】领取!
① Python所有方向的学习路线图,清楚各个方向要学什么东西
② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例,学习不再是只会理论
④ 华为出品独家Python漫画教程,手机也能学习
⑤ 历年互联网企业Python面试真题,复习时非常方便

相关文章:
从入门到高手的99个python案例(2)
51. 列表和数组比较 - 列表通用,NumPy数组高效。 import numpy as np normal_list [1, 2, 3] np_array np.array([1, 2, 3]) print(np_array.shape) # 输出 (3,), 数组有形状信息 52. Python的内置模块datetime - 处理日期和时间。 from datetime import…...
btstack协议栈实战篇--Performance - Stream Data over SPP (Server)
btstack协议栈---总目录_bt stack是什么-CSDN博客 目录 1.Track throughput 2.Packet Handler 3.btstack_main 4.log信息 RFCOMM连接打开后,请求RFCOMM EVENT CAN SEND NOW,通过rfcomm request can send now event()。 当我们得到RFCOMM EVENT CAN SEND NOW…...
ThinkPHP5.0 apache服务器配置URL重写,index.php去除
本地环境wamp .htaccess文件代码 <IfModule mod_rewrite.c>Options FollowSymlinks -MultiviewsRewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] </IfModule> 踩过这个坑&a…...
《TCP/IP网络编程》(第十五章)套接字和标准I/O
之前数据通信时,使用的是read&write函数以及其他各种I/O函数,本章将使用标准I/O函数,例如C语言的fopen、fgetc、fputs等等;C语言的cout、cin等等 1.使用标准I/O函数的优点 ①跨平台兼容性: 标准I/O函数通常是跨平…...
认识一些分布函数-Gumbel分布
1. Gumbel分布 Gumbel分布(也称为古贝尔型)是一种常用的非对称极值分布( Extreme Value Distribution,EVD),用于建模极大值和极小值,也就是所谓的EVD Type I分布。例如,EVD Type I 被用来预测地震、洪水和其他自然灾害,以及在风险管理中建模操作风险和那些在一定年龄…...
C语言之void类型的本质
一:C语言属于强类型语言 (1)编程语言分两种:强类型语言和弱类型语言。强类型语言所有的变量都有自己固定的类型,这个类型有固定的类型占用,有固定的解析方法;弱类型语言中没有类型的概念&#x…...
Wall国内开源程序照片墙,支持VR全景及安装教程
下载 GitHub官网:https://github.com/zhang-tong-yao/wall 软件下载:https://github.com/zhang-tong-yao/wall/releases,推荐下载最新的版本。 演示效果 目前支持PC端和移动端自适应。 演示地址:https://demo-wall.ityao.cn …...
七个备受欢迎的IntelliJ IDEA实用插件
有了Lombok插件,IntelliJ就能完全理解Lombok注解,使它们能如预期般工作,防止出现错误,并改善IDE的自动完成功能。 作为IntelliJ IDEA的常用用户,会非常喜欢使用它,但我们必须承认,有时这个IDE&…...
HDFS架构
HDFS(Hadoop Distributed File System)是Apache Hadoop项目的核心组件之一,它是一个分布式文件系统,专为运行在通用硬件上的大型数据集提供高吞吐量的数据访问。HDFS的设计目标是支持大规模数据的存储和处理,尤其是在大…...
【机器学习】LightGBM: 优化机器学习的高效梯度提升决策树
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 LightGBM: 优化机器学习的高效梯度提升决策树引言一、LightGBM概览二、核心技术…...
【会议征稿,IEEE出版】第六届物联网、自动化和人工智能国际学术会议(IoTAAI 2024,7月26-28)
第六届物联网、自动化和人工智能国际会议(IoTAAI 2024)将于2024年07月26-28日在中国广州召开。 会议旨在拓展国际科技学术交流渠道,搭建学术资源共享平台,促进全球范围内的科技创新,提升中外学术合作。会议还鼓励不同领…...
Flask-Logging
Flask-Logging 教程 概述 flask-logging 是一个用于在 Flask 应用中实现高级日志记录功能的库。它能够帮助开发者轻松地配置和管理日志,适用于开发和生产环境。通过使用 flask-logging,可以更好地监控应用的运行状态和调试问题。 官方文档 Flask-Log…...
go匿名函数
【1】Go支持匿名函数,如果我们某个函数只是希望使用一次,可以考虑使用匿名函数 【2】匿名函数使用方式: (1)在定义匿名函数时就直接调用,这种方式匿名函数只能调用一次(用的多) &am…...
ZED双目相机环境配置
官方资料:stereolabs/zed-python-api: Python API for the ZED SDK (github.com) 1,配置ZED相机环境 1.安装CUDA 查看电脑是否安装CUDA,安装过程可参考以下博文: 如何选择匹配的CUDA版本:https://blog.csdn.net/iam…...
【最新鸿蒙应开发】——HarmonyOS沙箱目录
鸿蒙应用沙箱目录 1. 应用沙箱概念 应用沙箱是一种以安全防护为目的的隔离机制,避免数据受到恶意路径穿越访问。在这种沙箱的保护机制下,应用可见的目录范围即为应用沙箱目录。 对于每个应用,系统会在内部存储空间映射出一个专属的应用沙箱…...
SringBoot 如何使用HTTPS请求及Nginx配置Https
SringBoot 如何使用HTTPS请求及Nginx配置Https SringBoot 如何使用HTTPS请求生成证书导入证书及配制创建配置类将pfx转成.key和.pem Nginx 安装SSL依赖./configure 安装依赖编译安装完openssl后报了新错 Nginx配置 SringBoot 如何使用HTTPS请求 生成证书 由于业务数据在传输过…...
14.基于人类反馈的强化学习(RLHF)技术详解
基于人类反馈的强化学习(RLHF)技术详解 RLHF 技术拆解 RLHF 是一项涉及多个模型和不同训练阶段的复杂概念,我们按三个步骤分解: 预训练一个语言模型 (LM) ;训练一个奖励模型 (Reward Model,RM) …...
Linux Radix tree简介
文章目录 前言一、Radix tree简介二、Operations2.1 Lookup2.2 Insertion2.3 Deletion 三、Linux内核API3.1 初始化3.2 radix_tree_insert/delete3.3 radix_tree_preload3.4 radix_tree_lookup3.5 radix_tree_tag_set3.6 radix_tree_tagged 四、address_space4.1 简介4.2 相应数…...
maven 下载jar包加载顺序
在 Maven 构建过程中,依赖的下载源取决于你的 pom.xml 文件中的 配置、settings.xml 文件中的 和 配置,以及你的 Nexus 仓库的设置。以下是决定 Maven 从哪个仓库下载依赖的关键点: 仓库配置优先级 项目 pom.xml 文件中的仓库配置ÿ…...
新增多种图表类型,新增视频、流媒体、跑马灯组件,DataEase开源数据可视化分析工具v2.7.0发布
2024年6月11日,人人可用的开源数据可视化分析工具DataEase正式发布v2.7.0版本。 这一版本的功能变动包括:图表方面,新增对称条形图、桑基图、流向地图、进度条等图表类型,并对已有的仪表盘、指标卡、明细表、汇总表、水波图、象限…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
[USACO23FEB] Bakery S
题目描述 Bessie 开了一家面包店! 在她的面包店里,Bessie 有一个烤箱,可以在 t C t_C tC 的时间内生产一块饼干或在 t M t_M tM 单位时间内生产一块松糕。 ( 1 ≤ t C , t M ≤ 10 9 ) (1 \le t_C,t_M \le 10^9) (1≤tC,tM≤109)。由于空间…...
在Zenodo下载文件 用到googlecolab googledrive
方法:Figshare/Zenodo上的数据/文件下载不下来?尝试利用Google Colab :https://zhuanlan.zhihu.com/p/1898503078782674027 参考: 通过Colab&谷歌云下载Figshare数据,超级实用!!࿰…...
算法刷题-回溯
今天给大家分享的还是一道关于dfs回溯的问题,对于这类问题大家还是要多刷和总结,总体难度还是偏大。 对于回溯问题有几个关键点: 1.首先对于这类回溯可以节点可以随机选择的问题,要做mian函数中循环调用dfs(i&#x…...
用鸿蒙HarmonyOS5实现国际象棋小游戏的过程
下面是一个基于鸿蒙OS (HarmonyOS) 的国际象棋小游戏的完整实现代码,使用Java语言和鸿蒙的Ability框架。 1. 项目结构 /src/main/java/com/example/chess/├── MainAbilitySlice.java // 主界面逻辑├── ChessView.java // 游戏视图和逻辑├── …...
