python的强大之处在于有丰富的实现各种功能的标准库和第三方库,另外还允许用户自己建立库文件,

标准模块(又称为库)包括sys, os, glob, socket, threading, _thread, queue, time, timeit, subprocess, multiprocessing, signal, select, shutil, tempfile等。

大多数系统级接口集中在:sys和os两个模块。

下面将简单介绍sys和os模块:

sys模块

平台与版本的信息,如sys.platform, sys.maxsize, sys.version
    模块搜索路径sys.path
    模块表sys.modules,这是一个包含Python程序中import进来的模块的name:module信息的字典
    异常信息,如sys.exc_info()
    命令行参数sys.argv
    标准流,如sys.stdin, sys.stdout, sys.stderr
    程序退出调用sys.exit

 #!/usr/bin/env python
# file_name: test_sys.py import sys # 导入模块
print(sys.path) # 输出模块搜索路径 print(sys.argv) # sys.argv 实现接收外部传递的参数,包括文件名
print(sys.argv[0]) # 脚本的名称总是sys.argv列表的第一个参数,即为argv[0]
print(sys.argv[1]) # 其他参数依次为argv[1]
print(sys.argv[2]) # argv[2]
print(sys.argv[3]) # argv[3]

终端执行:

python test_sys.py I love python

运行结果

['e:\\vscode_pragram\\Python3\\Python基础\\day2\\代码', 'C:\\software\\Python\\Python35-32\\python35.zip', 'C:\\software\\Python\\Python35-32\\DLLs', 'C:\\software\\Python\\Python35-32\\lib', 'C:\\software\\Python\\Python35-32', 'C:\\software\\Python\\Python35-32\\lib\\site-packages']
['sys_test.py', 'i', 'love', 'python']
sys_test.py
I
love
python

os模块

Python os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。如果我们要操作文件、目录,可以在命令行下面输入操作系统提供的各种命令来完成。比如dir、cp等命令。其实操作系统提供的命令只是简单地调用了操作系统提供的接口函数,Python内置的os模块也可以直接调用操作系统提供的接口函数。

#!/usr/bin/env python
# file_name: os_test.py import os os.system("dir") # 列出当前文件夹下的文件名称
# 该方法不能利用变量保存下来,及调用时立即打印
# 打算利用dir_req保存列出的文件名称信息,但是结果并不是那么回事,请看
dir_req = os.system("dir")
print("--->", dir_req)

终端输出:

驱动器 E 中的卷没有标签。
卷的序列号是 000D-4517 e:\vscode_pragram\Python3\Python基础\day2\代码 的目录 2017/04/15 09:51 <DIR> .
2017/04/15 09:51 <DIR> ..
2017/04/15 09:58 184 os_test.py
2017/04/15 09:44 180 sys_test.py
2 个文件 364 字节
2 个目录 60,183,629,824 可用字节
---> 0
最后输出了 --->0 ,说明dir_req为0,也就是说当os.system("dir")运行成功返回0,不成功返回错误代码
 
如果需要保存信息,将利用 popen 方法,如下:
#!/usr/bin/env python
# file_name: os_test2.py
dir_req = os.popen("dir") # dir_req 返回一个文件描述符号为fd的打开的文件对象
print(dir_req) # 将该文件描述符打印到屏幕
print("\n")
print(dir_req.read()) # 利用read方法读取该文件描述符的内容

终端输出:

<os._wrap_close object at 0x01B1B7B0>

 驱动器 E 中的卷没有标签。
卷的序列号是 000D-4517 e:\vscode_pragram\mine\Python3\Python基础\day2\代码 的目录 2017/04/15 09:51 <DIR> .
2017/04/15 09:51 <DIR> ..
2017/04/15 10:03 269 os_test.py
2017/04/15 09:44 180 sys_test.py
2 个文件 449 字节
2 个目录 60,183,629,824 可用字节

---------------------------------------------------------------------------------------

python sys模块所有方法(英文):https://docs.python.org/3/library/sys.html

python os模块所有方法:http://www.runoob.com/python/os-file-methods.html

os.popen方法: http://www.runoob.com/python/os-popen.html

python 模块初识的更多相关文章

  1. Python模块初识

    目录 一 模块初识 二 模块分类 三 导入模块 四 Python文件的两种用途 五 模板查找顺序 六 软件开发目录规范 一.模块初识 模块是自我包含并且有组织的代码片段,是一系列功能的集合体,一个py ...

  2. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  3. Python 基础-python环境变量、模块初识及字符类型

    (1).模块内置模块.第三方模块.自定义模块初识模块:sys \ os一般标准库存放路径 C:\Users\Administrator\AppData\Local\Programs\Python\Py ...

  4. 小白的Python之路 day1 模块初识

    模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单的. ...

  5. python之路:模块初识

    python王者开发之路:模块初识 模块初识我现在讲的确有点早.不过没关系,后面我会详细说模块. 模块,也就是库,是python三剑客之一.这三剑客,函数.库和类,都是由程序编写而成的.之所以我先说模 ...

  6. Python学习:模块初识、数据类型

    1.模块初识 在Python中,模块分为两种: (1)标准库 标准库无需安装,只要在使用的时候import就可以使用了 (2)第三方库 第三方库必须下载安装之后才能够引入使用 下面介绍两个基本的模块: ...

  7. 孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块

    孤荷凌寒自学python第六十七天初步了解Python爬虫初识requests模块 (完整学习过程屏幕记录视频地址在文末) 从今天起开始正式学习Python的爬虫. 今天已经初步了解了两个主要的模块: ...

  8. python day 8: re模块补充,导入模块,hashlib模块,字符串格式化,模块知识拾遗,requests模块初识

    目录 python day 8 1. re模块补充 2. import模块导入 3. os模块 4. hashlib模块 5. 字符串格式:百分号法与format方法 6. 模块知识拾遗 7. req ...

  9. python 之 初识模块

    什么是模块 什么是模块 一个.py文件 就是一个模块 我们使用import加载的模块分为4个通用类别 1.py文件 2.包好一组模块的包(带__init__.py文件的文件夹) 3.内置模块 4.已被 ...

随机推荐

  1. Weka 二次开发使用心得

    Weka 二次开发使用心得 一.weka数据挖掘流程 使用weka图形界面,初步尝试了下数据的预处理.分类.关联等操作,因为weka本身就是一个开源的机器学习库,于是想自己尝试下利用weka的api进 ...

  2. Unix系统中常用的信号含义

    http://blog.csdn.net/u012349696/article/details/50687462 编号为1 ~ 31的信号为传统UNIX支持的信号,是不可靠信号(非实时的),编号为32 ...

  3. 数组使用NSUserDefaults存储的问题,

    最近在做搜索记录的时候,由于搜索记录是存储在本地的,而且都是字符串,我考虑到数据量也不是太大,于是就懒的使用数据库了. 于是就想到了NSUserDefaults 存储的方式, 但是由于之间对于数组没有 ...

  4. SpringBoot操作MongoDB实现增删改查

    本篇博客主讲如何使用SpringBoot操作MongoDB. SpringBoot操作MongoDB实现增删改查 (1)pom.xml引入依赖 <dependency> <group ...

  5. fmt - 简易的文本格式优化工具 simple optimal text formatter

    总览 (SYNOPSIS) ../src/fmt [-DIGITS] [OPTION]... [FILE]... 描述 (DESCRIPTION) 重新 格式化 文件 FILE(s) 中的 每一个 段 ...

  6. 2017.12.10 Java写一个杨辉三角(二维数组的应用)

    杨辉三角的定律 第n行m列元素通项公式为: C(n-1,m-1)=(n-1)!/[(m-1)!(n-m)!] 需要用到创建二维数组 package com.glut.demo; /** * 杨辉三角 ...

  7. Linux环境下使用xampp配置php开发环境

    XAMPP (Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.这个软件包原来的名字是LAMPP,但是为 了避免误 解,最新的几个版本就改名为 XAMPP 了.它可以在Win ...

  8. 关于Star UML

    为什么是使用Star UML而不是Visio 2013呢? 以前本人在大学期间使用的Visio 2013来绘制UML的,最近一个星期因为在阅读源码,所以有多学了一门UML绘制工具—Star UML,下 ...

  9. Mysql之1451 - Cannot delete or update a parent row: a foreign key constraint fails...解决办法记录

    今天使用delete语句删除一张表中的一条信息时,提示了这么一个错误:1451 - Cannot delete or update a parent row: a foreign key constr ...

  10. php 获取开始日期与结束日期之间所有月份

    function showMonthRange($start, $end) { $end = date('Ym', strtotime($end)); // 转换为月 $range = []; $i ...