Python的强大之处在于他有非常丰富和强大的标准库和第三方库(模块),几乎你想实现的任何功能都有相应的Python库支持,就类似于C#中的类库亦或JAVA的jar包,前端中的JS库。

使用模块有什么好处

其实模块化这个概念在任何的编程语言中都是存在的,可以想象一下,如果一直在一个文件里面编写的代码,那么代码会越来越长,后期很难维护和升级。

为了编写可维护的代码,我们会对代码进行拆分,分到不同的文件里面,这样每个文件的代码量就少了,在python中,一个.py文件就可以理解为一个模块,模块之间可以互相引用。

除了可以自己编写模块以外python还给我们内置了一些模块称为标准库,还有需要单独安装的第三方库

模块导入方法

我们已经知道每一个.py文件其实就是一个模块,那么我们来动手编写一个模块

#内容为module1.py

message="hello world"

def say():

print("hello")

模块定义好了在其他文件中入如何导入模块

import module1

如果导入多个模块以逗号分隔,如import module_name1,module_name2

#newdemo.py 新创建的py文件中到入模块,并访问模块下方法

#第一种导入方式

import module1

module1.say()

#第二种导入方式

from module1 import *

say()

运行一下发现上面的两种导入方式都没毛病,都可以正常运行,我们来对比下两种导入方式:

调用方式不同

前者是 将被导入的模块的名称放入到当前的模块内; 而后者 是将被导入的函数或变量的名称放入到当前操作的模块内。

from ...import提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。

from ...import导入会和你文件内的函数、变量名称不能冲突会被覆盖(解决方案看代码)

#为了防止名称冲突,通过as起一个别名

from module1 import say as newsay

def say():

print("不是导入模块的say")

say() #自己的

newsay() #引来的

导入模块我们已经会了,那导入包和导入模块一样么,显然不会一样

import package_test #导入包的时候会先执行 __init__下的内容

# 在__init__中from . import test1

print(package_test.test1.name)

内置模块

一般情况下它们的存放目录

标准库:应该如何使用标准库:

1.datetime模块:datetime模块是对time模块的一个高级封装(time包基于C语言的库函数)

#前面刚说了模块的不同导入方式,第一种

import datetime

print(datetime.datetime.now()) #当前时间 2017-12-27 10:05:16.684310

print(datetime.date.today()) #格式化输出 2017-12-27

print(datetime.datetime.now()+datetime.timedelta(days=10)) #比现在加10天

print(datetime.datetime.now()+datetime.timedelta(days=-10)) #比现在减10天

print(datetime.datetime.now()+datetime.timedelta(hours=-10)) #比现在减10小时

print(datetime.datetime.now()+datetime.timedelta(seconds=120)) #比现在+120s

#第二种

from datetime import datetime

print(datetime.now()) #当前时间 2017-12-27 10:05:16.684310

2.random模块:Python中的random模块用于生成随机数

import random

print(random.random()) #用于生成一个0到1的随机符点数: 0 <= n < 1.0

print(random.randint(1,7))#用于生成一个指定范围内的整数,包含1 和 7

print(random.randrange(1,3))#随机指定范围内的整数,不包含3

print(random.choice('lidao'))#随机字符

print(random.choice(['aa','bb','cc']))#随机在列表中取值

print(random.randrange(1,9000)+1000)#生成四位数字验证码

3.sys模块:sys模块提供了一系列有关Python运行环境的变量和函数

import sys

print(sys.platform) #获取当前执行环境的平台,如win32表示是Windows 32bit操作系统,linux2表示是linux平台;

print(sys.path) #path是一个目录列表,供Python从中查找第三方扩展模块。在python启动时,sys.path根据内建规则、PYTHONPATH变量进行初始化。

print(sys.builtin_module_names) #返回一个列表,包含内建模块的名字

print(sys.argv) #可以用sys.argv获取当前正在执行的命令行参数的参数列表(list) sys.argv[0] 当前程序名 sys.argv[1] 第一个参数

4.os模块:os模块包含普遍的操作系统功能,如文件操作、目录等,与具体的平台无关

import os

print(os.name) #判断现在正在实用的平台,Windows 返回 "nt'; Linux 返回’posix'

print(os.getcwd())#得到当前工作的目录

os.rename("game.py","game1.py")#文件重命名

print(os.listdir())#指定所有目录下所有的文件和目录名

print(os.mkdir("aa"))#创建目录

print(os.system("dir"))#执行shell命令

当然上面只是简单让大家先了解下内置模块的使用,方法还有很多,后面在案例遇到的时候呢我们再去列出来。

第三方模块

1.xlrd模块:Python使用xlrd模块读写Excel文件

#第一步:通过pip install xlrd 安装

#第二步:导入模块

import xlrd

#第三步:读取数据

data = xlrd.open_workbook('test.xlsx')

table=data.sheets()[0] #通过索引顺序获取工作表

print(table.row_values(0)) #整行

print(table.col_values(0)) #整列

print(table.nrows) #行数

print(table.ncols) #列数

#通过循环行列表数据

for i in range(table.nrows):

print(table.row_values(i))

print(table.cell(0,0).value) #单元格

2.xpinyin模块:一个把汉字转成拼音的模块

#pip install xpinyin

from xpinyin import Pinyin

p=Pinyin()

print(p.get_pinyin("北京"))

3.Image模块:Python操作图像的模块

from PIL import Image

import os

#pip install Image

im=Image.open("test.jpg") #加载图像

#im.show() #打开图片

#创建缩略图

im.thumbnail((500,500))#thumbnail函数接受一个元组作为参数,分别对应着缩略图的宽高,在缩略时,函数会保持图片的宽高比例。如果输入的参数宽高和原图像宽高比不同,则会依据最小对应边进行原比例缩放。

im.save("newtest.jpg","JPEG")

#图像裁剪

region=im.crop((100,100,300,200))

region.save("croptest.jpeg")

# 旋转图片

# 左旋转45度

im = im.rotate(45)

im.save("rotate-l45.jpeg")

Python有很多非常有意思的模块和资源,给大家贴一个地址,自己看看哈https://github.com/jobbole/aw...

python常用内置模块-Python内置模块和第三方模块相关推荐

  1. Python 常用的标准库以及第三方库有哪些?

    Python常用库大全,看看有没有你需要的. 环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具 ...

  2. Python 常用的标准库以及第三方库

    作者:史豹 链接:https://www.zhihu.com/question/20501628/answer/223340838 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...

  3. Python常用的标准库以及第三方库有哪些?

    20个必不可少的Python库也是基本的第三方库 读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz ...

  4. Python常用的标准库以及第三方库

    20个必不可少的Python库也是基本的第三方库 常用工具的Python库,他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scra ...

  5. python常用标准库有哪些-Python 常用的标准库以及第三方库有哪些?

    我在专栏文章中写过一篇 Python不能不知的模块 - Python之美 - 知乎专栏,列举了一些标准库中一些不太出名但是都应该要掌握的模块: 1. argparse. 用来替代optparse的命令 ...

  6. python的第三方库是干什么用的-Python 常用的标准库以及第三方库有哪些?

    我在专栏文章中写过一篇 Python不能不知的模块 - Python之美 - 知乎专栏,列举了一些标准库中一些不太出名但是都应该要掌握的模块: 1. argparse. 用来替代optparse的命令 ...

  7. python常用函数-python常用函数精讲

    原标题:python常用函数精讲 返回值为bool类型的函数 bool是Boolean的缩写,只有真(True)和假(False)两种取值 bool函数只有一个参数,并根据这个参数的值返回真或者假. ...

  8. python常用函数-Python小白必备的8个最常用的内置函数(推荐)

    Python给我们内置了大量功能函数,官方文档上列出了69个,有些是我们是平时开发中经常遇到的,也有一些函数很少被用到,这里列举被开发者使用最频繁的8个函数以及他们的详细用法 print() prin ...

  9. python常用函数-python—各种常用函数及库

    列表 list1.append(x) 将x添加到列表末尾 list1.sort() 对列表元素排序 list1.reverse() 将列表元素逆序 list1.index(x) 返回第一次出现元素x的 ...

  10. python常用函数-python常用函数与用法示例

    本文实例讲述了python常用函数与用法.分享给大家供大家参考,具体如下: 自定义函数实例 # 定义一个函数 def printme( str ): "打印任何传入的字符串" pr ...

最新文章

  1. Codeforces Round 263(Div. 2)
  2. 小程序添加动画效果--遇到的问题
  3. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十五)完美捕捉精灵之神器 -- HitTest...
  4. 机器学习系列3:能量函数分析
  5. Matlab:成功解决Function definition are not permitted at the prompt or scripts
  6. Create QR Code
  7. hbase sqoop 实验_SQOOP安装及使用-实验
  8. 恕我直言:职场上太低调不是装,是愚蠢!
  9. 第 7 章 Neutron - 071 - 详解 ML2 Core Plugin(I)
  10. 数字版权管理 (DRM) 续
  11. python生成倒计时图片_用Python自动化生成新年倒计时图片
  12. python 伪造源ip_Python实现爬虫设置代理IP和伪装成浏览器的方法共享
  13. Apsara Clouder阿里巴巴开发规范认证
  14. VC组合框的使用示例
  15. linux设置Supervisor开机自启动
  16. LeetCode Weekly Contest 199
  17. 5.Emwin控件显示中文
  18. GoogLeNet网络
  19. 22年山东省B-2网页渗透测试
  20. 乔纳森·丹尼可(Jonathan Danylko)

热门文章

  1. 设计模式-结构性模式
  2. Eclipse使用gradle编译时,使用固定的jdk版本进行编译(修改gradle的jdk编译版本)
  3. 脱壳学习之加壳的概念
  4. HTML5 2D平台游戏开发#7Camera
  5. 如何搞定SVN目录的cleanup问题和lock问题
  6. Appium移动自动化框架
  7. 20155337祁家伟做中学
  8. python *args **kwargs
  9. 技术走向管理一些思考(1)-性格特质和自我管理
  10. PageRequestManagerServerError