python中的sys模块和os_Python常用模块sys,os,time,random功能与用法实例分析

本文实例讲述了Python常用模块sys,os,time,random功能与用法。分享给大家供大家参考,具体如下:

sys:

介绍:主要包含涉及python编译器与系统交互的函数。

常用函数:

?

1

2

3

4

5

6

7

import sys

print(sys.argv)#本文件名,已经运行该程序时的参数

#[如在命令窗口中python3 mysys.py 参数1 参数2]

#那么参数1为sys.argv[1],以此类推

print(sys.version)#python版本号

print(sys.path)#返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值

# sys.exit(0)#中途退出程序,当参数非0时,会引发一个SystemExit异常

?

1

2

sys.stdout.write()#在屏幕中打印

sys.stdout.flush()#刷新标准缓冲区

os:

介绍:这个模块提供了一种方便的使用操作系统函数的方法。

常用函数:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

import os

print("-------getcwd()获取当前目录-------")

print(os.getcwd())

print("-------chdir()改变当前所在目录-------")

# print(os.chdir("c://users"))#c:\users r'c:users'

# print(os.getcwd())

print("------ . .. --------")

print(os.curdir)#打印出 .

print(os.pardir)#打印出 ..

print("-------makedirs递归创建目录-------")

#os.makedirs(r"c:c") #要创建c,如果a不存在则创建a,如果b不存在则创建b

print("-----remodir递归删除目录---------")

#os.removedirs(r"c:c") #清除空文件夹,从c到a,如果a,b也是空的话也会删除。

print("------mkdir创建目录--------")

# os.mkdir('c://a')

print("--------listdir列出指定目录下的所有文件和子目录------")

print(os.listdir())

print("--------remove删除文件------")

# print(os.remove('c://newfile'))

print("-------rename文件重命名-------")

# os.rename('oldname','newname')

print("-------stat 获取文件或目录信息-------")

print(os.stat('.'))

print("------sep 输出操作系统特点的路径分割符--------")

print(os.sep)

print("-----linesep 输出当前平台的行终止符---------")

list1=[]

list1.append(os.linesep)

print(list1)

print("------pathsep 输出用于分割文件的字符串--------")

print(os.pathsep)

print("----------name输出操作平台----------")

# print(os.name)#nt

print("-------system执行shell命令-------------")

print(os.system("dir"))

print("----------path关于文件和目录的操作----------")

# print(os.path.abspath(__file__))###返回绝对路径

print(os.path.split(os.path.abspath(__file__)))##将路径切割成目录名和文件名

print(os.path.dirname(os.path.abspath(__file__)))#只取路径名

print(os.path.dirname(__file__))###__file__是包括完整路径名的,也是绝对路径

print(os.path.basename(__file__))#只取文件名

print(os.path.exists("c://a"))#判断路径是否存在,不区分目录或文件

print(os.path.isabs(__file__))#判断是否是绝对路径

print(os.path.isfile("c://amd"))#判断是否是文件

print(os.path.join(r'c:',r'.txt'))#组合绝对路径

print("----------environ获取当前系统所有环境变量----------")

print(os.environ)

print("---------popen() 方法用于从一个命令打开一个管道-----------")

print(os.popen('dir').read())##主要用于处理执行命令的返回结果

print("获取进程号".center(50,'-'))

print(os.getpid())#获取当前进程号

print(os.getppid())#获取父进程号

注意:

os.system跟os.popen的主要区别是前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的存储输出内容的一个文件描述符。

1-200506094UbB.png

附:

subprocess模块是python从2.4版本开始引入的模块。主要用来取代 一些旧的模块方法,如os.system、os.spawn*、os.popen*、commands.*等。subprocess通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

time:

介绍:包含关于时间的函数

常用函数:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

import time

print("--------时间戳-------------")

print("时间戳time:",time.time())#时间戳time: 1516435471.756463

print("----------结构化时间(tm_year=2018, tm_mon=1.....-----------")

print("struct_time:",time.gmtime(time.time()))#tm_year=2018, tm_mon=1.........

print("timestamp->struct_time:",time.gmtime())#UTC时间

print("local_time:",time.localtime())#本地时区时间

print("struct_time->timstamp:",time.mktime(time.gmtime()))#结构化时间-->时间戳

print("----------ctime,asctime--------")

print("string_time:",time.ctime())###字符串时间 Mon Feb 5 01:02:06 2018

print("asctime:",time.asctime())###字符串时间 Mon Feb 5 01:02:06 2018

print("----------format_time格式化时间、struct_time-----------")

#结构化时间转格式化时间:%Y代表year,%m代表month,%d代表day, %H代表hour,%M代表minute,%S代表second

#只会取代%Y等字符,并不替换无对应意义的字符

print("struct_time -> format_time: ", time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))

y=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())

#格式化时间转结构化时间

print("format_time -> struct_time: ",time.strptime(y,"%Y-%m-%d %H:%M:%S"))

print("------------year--------------")

print("year:",time.localtime().tm_year)

random:

介绍:存储着关于“随机”的函数

常用函数:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

import random

print("---------0到1,随机浮点值-----------")

print(random.random())

print("------------从范围中,随机取值,1<=x<=2--------")

print(random.randint(1,2))

print("------------从指定范围中,随机取值--------")

print(random.randrange(1,3))

print("------------从序列中,随机值--------")

print(random.choice("hello"))#从序列中随机取值

print(random.choice([0,11,3,99]))

print("------------从序列中,随机取指定个数值--------")

print(random.sample('heigo',2))#

print("------------随机取浮点值,start,end--------")

print(random.uniform(1,2))#start,end

print("-------洗牌,打乱排序-----")

l=[0,3,4,5,67,9]

random.shuffle(l)

print(l)

希望本文所述对大家Python程序设计有所帮助。

原文链接:https://www.cnblogs.com/progor/p/8415476.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值