python常见模块与用法

yizhihongxing

Python 常见模块与用法

Python 作为一门强大的编程语言,在其强大的生态系统中拥有着海量的模块和库,供我们选择。本文将介绍一些 Python 常见的模块与用法及示例代码。

一、math 模块

math 模块提供了许多数学运算功能,包括三角函数、指数函数、对数函数、常数等等。

1.1 三角函数

例:

import math

print("sin(0)=", math.sin(0))
print("cos(pi)=", math.cos(math.pi))
print("tan(pi/2)=", math.tan(math.pi/2))

输出:

sin(0)= 0.0
cos(pi)= -1.0
tan(pi/2)= 1.633123935319537e+16

1.2 对数函数

例:

import math

print("e^1=", math.exp(1))
print("log(2)=", math.log(2))
print("log10(100)=", math.log10(100))

输出:

e^1= 2.718281828459045
log(2)= 0.6931471805599453
log10(100)= 2.0

1.3 常熟

例:

import math

print("π=", math.pi)
print("e=", math.e)

输出:

π= 3.141592653589793
e= 2.718281828459045

二、random 模块

random 模块提供了生成随机数的功能。

2.1 随机数生成

例:

import random

print("0-1 之间的随机数:", random.random())
print("0-10 之间的随机整数:", random.randint(0, 10))
print("0-1 之间的随机数:", random.uniform(0, 1))

输出:

0-1 之间的随机数: 0.6981528192484882
0-10 之间的随机整数: 7
0-1 之间的随机数: 0.06994400983506405

2.2 随机序列操作

例:

import random

a = [1, 2, 3, 4, 5, 6]
random.shuffle(a)
print("打乱后的序列:", a)
print("从序列随机取出一个元素:", random.choice(a))

输出:

打乱后的序列: [4, 2, 1, 6, 5, 3]
从序列随机取出一个元素: 5

三、datetime 模块

datetime 模块提供了处理日期和时间的功能。

3.1 获取当前时间

例:

import datetime

print("当前时间:", datetime.datetime.now())

输出:

当前时间: 2021-06-29 22:15:46.047858

3.2 时间戳转换

例:

import datetime

timestamp = 1624975200
dt = datetime.datetime.fromtimestamp(timestamp)
print("时间戳对应的时间:", dt)

输出:

时间戳对应的时间: 2021-06-29 14:00:00

四、os 模块

os 模块提供了访问操作系统接口的功能,包括文件处理、目录操作、进程管理等。

4.1 文件处理

例:

import os

filename = "test.txt"
if not os.path.exists(filename):
    with open(filename, 'w') as f:
        f.write("Hello World!")

with open(filename, 'r') as f:
    print("文件内容:", f.read())

os.remove(filename)

输出:

文件内容: Hello World!

4.2 目录操作

例:

import os

if not os.path.exists("testdir"):
    os.mkdir("testdir")
    print("创建目录:testdir")

os.chdir("testdir")
print("当前路径:", os.getcwd())

os.chdir("..")
os.rmdir("testdir")
print("删除目录:testdir")

输出:

创建目录:testdir
当前路径: /Users/user/Documents/testdir
删除目录:testdir

五、concurrent.futures 模块

concurrent.futures 模块提供了线程池和进程池的功能,可用于提高程序的运行效率。

5.1 线程池

例:

import concurrent.futures
import time

def worker(num):
    time.sleep(1)
    return num*num

if __name__ == '__main__':
    with concurrent.futures.ThreadPoolExecutor(max_workers=3) as executor:
        res = executor.map(worker, [1, 2, 3, 4, 5, 6])
        for r in res:
            print("结果:", r)

输出:

结果: 1
结果: 4
结果: 9
结果: 16
结果: 25
结果: 36

5.2 进程池

例:

import concurrent.futures
import time

def worker(num):
    time.sleep(1)
    return num*num

if __name__ == '__main__':
    with concurrent.futures.ProcessPoolExecutor(max_workers=3) as executor:
        res = executor.map(worker, [1, 2, 3, 4, 5, 6])
        for r in res:
            print("结果:", r)

输出:

结果: 1
结果: 4
结果: 9
结果: 16
结果: 25
结果: 36

结语

本文介绍了 Python 常见模块的使用方法及示例代码,希望对大家有所帮助。在实际工作中,还要根据具体需求选择更加适合的模块和库。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python常见模块与用法 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python中的内存管理之python list内存使用详解

    Python中的内存管理之python list内存使用详解 在Python中,列表(list)是一种常用的数据类型,它可以存储多个元素,并且支持动态扩容。在使用列表时,需要注意其内存使用情况,以避免出现内存泄漏等问题。本文将详细讲解Python中列表的内存使用情况,包括列表的内存分配、内存释放、内存管理等方面。 列表的内存分配 在Python中,列表的内存…

    python 2023年5月13日
    00
  • 跟老齐学Python之画圈还不简单吗?

    跟老齐学Python之画圈还不简单吗? 1. 前言 在学习Python的过程中,绘制图形是一个非常有趣的方向。本篇文章介绍了如何使用Python的turtle模块绘制圆。 2. turtle模块 turtle是Python标准库中的一个模块,提供了一个良好的绘图环境。它提供了一组简单的命令,用于控制海龟绘图窗口中的小海龟。turtle模块可以绘制很多图形,包…

    python 2023年5月19日
    00
  • IE的事件传递-event.cancelBubble示例介绍

    IE的事件传递包含三个阶段:事件捕获阶段、目标元素阶段、事件冒泡阶段。当事件发生时,IE会首先从最外层元素开始,一步步地向事件的目标(被点击的元素)传递,然后再返回,并依次触发每个元素上的事件处理程序。 其中,event.cancelBubble是IE中阻止事件冒泡的方法,该方法可以被使用在事件处理程序内。 以下是两个示例说明: 示例1: 停止事件冒泡 va…

    python 2023年6月13日
    00
  • python通过http上传文件思路详解

    在Python中,我们可以使用HTTP协议上传文件。本文将介绍Python通过HTTP上传文件的思路,并提供两个示例。 1. 通过POST请求上传文件 我们可以使用POST请求上传文件。以下是一个示例,演示如何使用requests库上传文件: import requests url = ‘http://example.com/upload’ files = …

    python 2023年5月15日
    00
  • 如何在Python中进行多变量正态性测试

    在Python中进行多变量正态性测试,可以使用多种方法,包括使用统计模块scipy.stats中的shapiro函数和它的变体,以及使用矩阵特征值分解等方法。以下是其中两种方法的示例: 方法一:使用shapiro函数进行多变量正态性测试 使用scipy.stats中的shapiro函数,可以测试多个变量是否满足正态分布。下面是一个示例,它使用一个2×3的数据…

    python-answer 2023年3月25日
    00
  • python之文件的读写和文件目录以及文件夹的操作实现代码

    我会详细讲解Python中文件的读写和文件目录以及文件夹的操作实现代码。大致分为以下几个部分: 文件的读写操作 文件的读写是我们在Python中常见的操作之一,它可以帮助我们进行文件的创建、打开、读写、保存等操作。 文件的创建和打开 要对文件进行读写,首先需要创建文件或者打开已有的文件。Python提供了open()函数实现文件的创建和打开。 f = ope…

    python 2023年5月31日
    00
  • Python re.findall中正则表达式(.*?)和参数re.S使用

    以下是“Python re.findall中正则表达式(.*?)和参数re.S使用”的完整攻略: 一、问题描述 在Python中,re.findall()函数是用于在字符串中查找所有匹配正则表达式的子串的函数。正则表达式中的(.*?)和参数re.S是re.findall()函数中常用的语法和参数,本文将详细讲解它们的用法和示例。 二、解决方案 2.1 正则表…

    python 2023年5月14日
    00
  • 定制FileField中的上传文件名称实例

    下面我将详细讲解“定制FileField中的上传文件名称实例”的完整攻略。 1. 了解FileField 在进行定制FileField中的上传文件名称之前,需要了解FileField的使用方法。 FileField是Django中的一个字段类型,用于处理用户上传的文件。在Django中使用FileField字段类型时,需要定义文件上传路径。默认情况下,上传的…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部