zoukankan      html  css  js  c++  java
  • Python的标准库介绍与常用的第三方库

    Python的标准库介绍与常用的第三方库

    Python的标准库:

    datetime:为日期和时间的处理提供了简单和复杂的方法。

    zlib以下模块直接支持通用的数据打包和压缩格式:zlibgzipbz2zipfile和 tarfile

    random:提供了生成随机数的工具。

    math:为浮点运算提供了对底层C函数库的访问。

    sys:工具脚本经常调用命令行参数。这些命令行参数以链表形式存储于 sys 模块的 argv 变量。

    glob:提供了一个函数,用于从目录通配符搜索中生成文件列表。

    os:提供了许多与操作系统相关联的函数。

    re:为高级字符串处理提供了正则表达式工具。

     

    这里以math库和random库为例进行详细介绍:

     

    math中常用的数学函数:

    圆周率pi的近似值,15位小数

    自然数ee的近似值,15位小数

    ceil(x):对浮点数向上取整

    floor(x):对浮点数向下取整

    pow(x,y):计算xy次方

    log(x):以e为基的对数

    log10(x):以10为基的对数

    sqrt(x):平方根

    exp(x)ex次幂

    degrees(x):将弧度值转换成角度

    radians(x) :将角度值转换位弧度值

    sin(x):正弦函数

    cos(x):余弦函数

    tan(x):正切函数

    asin(x):反正弦函数

    acos(x):反余弦函数

    atan(x):反正切函数

     

    import math
    
     
    print(math.pi)
    
    print(math.e)
    
    print(math.ceil(4.25))
    
    print(math.floor(2.78))
    
    print(math.pow(2,3))
    
    print(math.log(math.e))
    
    print(math.log10(5))
    
    print(math.sqrt(9))
    
    print(math.exp(2))
    
    print(math.degrees(3))
    
    print(math.radians(180))
    
    print(math.sin(30))
    
    print(math.cos(45))
    
    print(math.tan(60))
    
    print(math.asin(0.5))
    
    print(math.acos(0.3))
    
    print(math.atan(1.5))

    运行结果:

     

     

    random中常用的函数:

    seed(x):给随机数一个种子值seed(x),如果使用相同的seed(x)(即相同的种子值),则每次生成的随机数相同,如果不设置seed()值,则默认随机种子是系统时钟,系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。也可以说,seed的作用是让随机结果可重现。

    random():生成一个[0,1.0)之间的随机小数

    uniform(a,b):生成一个ab之间的随机小数

    randint(a,b):生成一个ab之间的随机整数

    randrange(a,b,c):随机生成一个从abc递增的数

    choice(< lsit >):从列表中随机返回一个元素

    shuffle(< list > )列表中的元素随机打乱

    sample(< list >, k):从指定列表随机获取k个元素

     

    import random
    
     
    #设置种子seed
    
    #生成同一个随机数
    
    random.seed(5)
    
    print(random.random())
    
    random.seed(5)
    
    print(random.random())
    
    random.seed(5)
    
    print(random.random())
    
    print()
    
     
    print(random.random())
    
    print(random.uniform(1,5))
    
    print(random.randint(2,10))
    
    print(random.randrange(1,9,2))
    
    ls=[1,3,5,7,9]
    
    print(random.choice(ls))
    
    random.shuffle(ls)
    
    print(ls)
    
    print(random.sample(ls,3))

    运行结果:

     

     

    使用math库和random库计算一个圆锥的体积:

    import math
    
    import random
    
     
    r=random.randint(1,5)
    
    h=random.uniform(1,10)
    
    v=math.pi*(r**2)*h/3
    
    print('r=',r)
    
    print('h=',h)
    
    print('v=',v)

    运行结果:

     

    Python常用的第三方库:

    Scrapy:爬虫工具常用库。

    Requestshttp库。  

    Pillow:是PILPython图形库)的一个分支。适用于图形领域。

    matplotlib用于绘制数据图。适用于数据分析。  

    OpenCV:图片识别,常用于练习人脸识别。

    pytesseract:图片文字识别,即OCR识别

    wxPythonPython的一个GUI(图形用户界面)工具。  

    Twisted:对于网络应用开发者最重要的工具。  

    SymPy可用于代数评测、差异化、扩展、复数等。  

    SQLAlchemy:数据库相关的库。  

    SciPyPython的算法和数学工具库。  

    Scapy:数据包探测和分析库。  

    pywin32:提供了与windows交互的方法和类的Python库。  

    pyQTPython一个GUI工具。不过Python脚本开发用户界面时一般优先选择wxPython

    pyGtkPython 的一个GUI库。  

    Pyglet用于3D动画和游戏开发引擎。  

    Pygame:开发2D游戏时使用效果较好。  

    NumPy:为Python提供了很多高级的数学方法。  

    nose PythonPython的测试框架。  

    nltk:自然语言工具包。  

    IPythonPython的提示信息。包括完成信息、历史信息、shell功能等。  

    BeautifulSoup xmlhtml的解析库,适用于新手学习。

     

    参考资料:

    https://www.runoob.com/python3/python3-stdlib.html

  • 相关阅读:
    C语言-if语句
    C语言-表达式
    C语言-基础
    Java for LeetCode 187 Repeated DNA Sequences
    Java for LeetCode 179 Largest Number
    Java for LeetCode 174 Dungeon Game
    Java for LeetCode 173 Binary Search Tree Iterator
    Java for LeetCode 172 Factorial Trailing Zeroes
    Java for LeetCode 171 Excel Sheet Column Number
    Java for LeetCode 169 Majority Element
  • 原文地址:https://www.cnblogs.com/BIXIABUMO/p/12005155.html
Copyright © 2011-2022 走看看