码迷,mamicode.com
首页 > 编程语言 > 详细

python-27-其他常用模块(二)

时间:2020-03-12 23:17:49      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:res   参数   exist   form   win   moved   图片   linux   pre   

前言

本编将学习的是os模块、sys模块、随机数模块。

分别是:os、sys、random

一、os模块

Python当中的os模块提供了丰富的方法来,对操作系统进行目录和文件处理。

import os
print(os.getcwd())                       # 获取当前目录
os.chdir(..)                           # chdir()相当于 cd
print(os.curdir)                         # 当前目前,相当于 .
os.mkdir(dirname)                      # 创建单个目录
os.makedirs(dirname1/dirname2)         # 创建多层目录
os.rmdir(dirname)                      # 删除单个空目录,若目录不为空则无法删除会报错
os.removedirs(dirname1)                # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.listdir(dirname)                    # 列出指定目录下的所有文件,并以列表方式打印
os.remove(path)                        # 删除一个文件
os.rename("oldname", "newname")          # 重命名文件/目录
os.stat(path/filename)                 # 获取文件/目录信息
os.system("bash command")                # 运行dos/shell命令,直接显示
os.popen("bash command").read()          # 运行dos/shell命令,获取执行结果
os.path.abspath(path)                # 返回path规范化的绝对路径
os.path.split(path)                   # 将path分割成目录和文件名二元组返回
os.path.dirname(path)                 # 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.realpath(__file__)               # 获取当前的目录
os.path.basename(path)                # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path)                  # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path)                   # 如果path是绝对路径,返回True
os.path.isfile(path)                  # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path)                   # 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(dirname1, dirname2)     # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path)                # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path)                # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path)                 # 返回path的大小
print(os.sep)                            # 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
print(os.linesep)                        # 输出当前平台使用的行终止符,win下为"\r\n",Linux下为"\n"
print(os.pathsep)                        # 输出用于分割文件路径的字符串 win下为;,Linux下为:
print(os.name)                           # 输出字符串指示当前使用平台。win->‘nt‘; Linux->‘posix‘

二、sys模块

1.sys模块是与python解释器交互的一个接口:

import sys

print(sys.path)             # python模块目录路径(python环境变量)
print(sys.path.clear())     # 清空python模块环境变量
print(sys.version)          # 获取当前 python 版本信息
print(sys.platform)         # 获取系统版本(不准确的)
print(sys.argv)             # 命令行参数list
print(sys.exit(0))          # 参数0正常退出,1异常退出

技术图片

 2.sys.argv 命令行参数用法:

在dos命令或shell命令下执行,python3 py文件path 参数1 参数2....(编辑器里运行必定报错)

import sys
res_avg = sys.argv
name = res_avg[1]
pwd = res_avg[2]
print(type(name), name, type(pwd), pwd)
if name == gsxl and pwd == 123456:
    print(登录成功!)
else:print(账户或密码错误!!!)

技术图片

G:\python_study\study\study_python\python_Basics>python day18.py
Traceback (most recent call last):
  File "day18.py", line 81, in <module>
    name = res_arvg[1]
IndexError: list index out of range

G:\python_study\study\study_python\python_Basics>python day18.py gsxl 123456
<class str> gsxl <class str> 123456
登录成功!

可以看到:python day18.py gsxl 123456,传入了参数1 参数2,如果没传是没有这个变量那么运行脚本肯定是会报错。

三、random随机数模块

1.随机数模块方法:

‘‘‘
一、random:随机数模块
‘‘‘
import random
print(random.random())                          # 大于0且小于1之间的小数
print(random.uniform(1, 3))                     # 大于1小于3的小数
print(random.randint(1, 5))                     # 大于等于1且小于等于5之间的整数
print(random.randrange(1, 10, 2))               # 大于等于1且小于10之间的奇数
print(random.randrange(2, 11, 2))               # 大于等于2且小于等于10之间的偶数
print(random.choice([1, 23, [4, 5]]))         # 1或者23或者[4,5])
print(random.sample([1, 23, [4, 5]], 2))      # 列表元素任意2个组合,返回的个数为函数的第二个参数

技术图片

2.随机生成6位验证码:

import random
def v_code():

    code = ‘‘
    for i in range(6):
        num = random.randint(0, 9)
        alf = chr(random.randint(65, 90))
        add = random.choice([num, alf])
        code = "".join([code, str(add)])
    return code

print(v_code())

技术图片

  欢迎来大家QQ交流群一起学习:482713805

python-27-其他常用模块(二)

标签:res   参数   exist   form   win   moved   图片   linux   pre   

原文地址:https://www.cnblogs.com/gsxl/p/12445728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!