在Python中有很多模块,模块对应的就是python源代码文件。模块中有Python程序自己附带的标准模块,还有很多其他人共享的第三方模块。模块中可以定义变量、函数和类。而多个功能类似的模块可以组织成一个包(即文件夹)。通过导入模块,可以使用该模块中定义的变量、函数、类等。

一、模块的导入和使用

  模块导入语句如下:

  import 模块            # 导入模块

  import 模块1,模块2,...,模块n  #导入多个模块

  注:模块名区分大小写。

  示例:

import sys,os

  模块的使用,格式

  模块名.函数名/变量名

  示例:

import sys

sys.path

  

二、模块sys,os

  sys:

  了解sys模块中的两个属性path和argv

  1、在sys模块中path属性会从返回的列表中的路径搜索模块,也就是显示python系统环境变量。请看示例:

import sys
print(sys.path) # 输出结果 ['E:\\python\\study\\day2', 'E:\\python\\study', 'C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python36\\python36.zip', 'C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python36\\DLLs', 'C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python36\\lib', 'C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python36', 'C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages']

  2、在操作系统命令行运行程序时,有时候需要传递若干个参数。c:\login.py name password。在程序中,可以通过sys.argv来访问这些传递的参数。argv[0]为python脚本名,如:c:\login.py;argv[1]为第一个参数,如name;argv[2]为第二个参数,如password。以此类推。

  os

  了解os模块中的system,popen,mkdir,makedirs

  1、system的方法,需要传递一个命令给它,示例:

import os

os.system("dir")

  在Windows操作系统上执行结果,显示当前目录结构。虽然这个方法可以显示出来到屏幕,但是这个结果是不能存储的。

  2、popen的方法,和system类似,示例:

import os

com_res = os.popen("dir")
print(com_res.read()) # 输出结果 驱动器 E 中的卷没有标签。
卷的序列号是 000F-C382 E:\python\study\day2 的目录 2017/02/15 周三 15:27 <DIR> .
2017/02/15 周三 15:27 <DIR> ..
2017/02/15 周三 15:27 101 sys模块.py
1 个文件 101 字节
2 个目录 187,171,733,504 可用字节

  虽然popen和system的效果类似,但是popen的方法是可以存储的,而且读取时需要使用read()方法,才可以读出

  3、mkdir的方法,是在当前操作目录创建一个新的目录,示例:

import os

os.mkdir('new_dir')

print(os.popen('dir').read())

# 输出结果
驱动器 E 中的卷没有标签。
卷的序列号是 000F-C382 E:\python\study\day2 的目录 2017/02/15 周三 15:36 <DIR> .
2017/02/15 周三 15:36 <DIR> ..
2017/02/15 周三 15:36 <DIR> new_dir
2017/02/15 周三 15:35 161 sys模块.py
1 个文件 161 字节
3 个目录 187,171,737,600 可用字节

  4、makedirs的方法,和mkdir的方法类似,只是这个方法是级联创建目录,示例:

import os

os.makedirs(r'1\2\3')

三、.pyc文件

  导入模块时,python解释器为加快程序的启动速度,会在与模块文件同一目录(或者pycahche)下生产.pyc文件。

  .pyc文件是经过编译后的字节码,这样下次导入时,如果模块源代码.py文件没有修改(通过时间戳比较),则直接导入.pyc文件,从而提高效率。

  按字节编译的.pyc文件是在导入模块时,python解释器自动完成。无需程序员手动执行。

1.7 Python基础知识 - 模块初识的更多相关文章

  1. python基础之模块初识

    Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持 一.time模块和datetime模块 和时间有关系的我们就要用到时间模块.在使用模 ...

  2. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  3. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  4. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  5. 二十五. Python基础(25)--模块和包

    二十五. Python基础(25)--模块和包 ● 知识框架   ● 模块的属性__name__ # my_module.py   def fun1():     print("Hello& ...

  6. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  7. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  8. python基础知识的学习和理解

    参考链接:https://github.com/yanhualei/about_python/tree/master/python_learning/python_base   python基础知识笔 ...

  9. python基础知识(一)

    Python基础知识 计算基础知识 1.cpu 人类的大脑 运算和处理问题 2.内存 临时存储数据 断电就消失了 3.硬盘 永久存储数据 4.操作系统 调度硬件设备之间数据交互 python的应用和历 ...

随机推荐

  1. swing导出html到excel

    swing导出html到excel 1  ShowCopDetal package com.product; import java.awt.BorderLayout; import java.awt ...

  2. 两种方法解决 "The License CNEKJPQZEX- has been cancelled..." 问题

    今天在使用 2017 的 IDEA 和 Pycharm 等IDE的时候,提示了如题的问题.之前实在 http://idea.lanyus.com/ 网站点击生成注册码,复制粘贴到 IDEA 中就好了, ...

  3. vue.js 第一课:实例化vue

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. [Python] Understand Mutable vs. Immutable objects in Python

    In this lesson, you will learn what mutable and immutable objects are, and the difference between th ...

  5. 关于HashMap

    总是觉得对HashMap很熟悉,但最近连续被问到几个关于它的问题,才发现它其实并不简单.这里对关于它的一些问题做个总结,也希望能够大家一个参考. 都知道它是基于hash值,可以进行常量时间消化的存储结 ...

  6. Python 面向对象 —— 多重继承

    多重继承(一个子类同时继承多个父类),容易造成混乱,即如果两个父类又相同的方法名和变量名时,无法确定继承哪一个. 正因如此,Java 等语言中并不支持多重继承(Java 是单继承多接口).Python ...

  7. 10款最好的Python IDE

    Python 的学习过程少不了集成开发环境(IDE)或者代码编辑器.这些 Python 开发工具帮助开发者加快使用 Python 开发的速度,提高效率.高效的代码编辑器或者 IDE 应该会提供插件,工 ...

  8. Gym 100952 A. Who is the winner?

    A. Who is the winner? time limit per test 1 second memory limit per test 64 megabytes input standard ...

  9. 最大子段和 模板题 51Nod 1049

    N个整数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续子段和的最大值.当所给的整数均为负数时和为0. 例如:-2,11,-4,13,-5,- ...

  10. 【2017 Multi-University Training Contest - Team 4】Counting Divisors

    [Link]:http://acm.hdu.edu.cn/showproblem.php?pid=6069 [Description] 定义d(i)为数字i的因子个数; 求∑rld(ik) 其中l,r ...