文档章节

python模块(os open sys re 函数)

d
 doudou___9958
发布于 2016/11/01 19:54
字数 1070
阅读 16
收藏 0

1.os

 导入格式:import os
    os.getcwd():返回当前路径
    os.listdir('/opt/') 显示指定路径下的文件或目录名
    os.remove('/tmp/1.txt')删除制定普通文件,不能删除目录
    os.removedirs('/tmp/1/')
    os.rmdir('/tmp/1/')
    以上两个指令都是删除目录的
    os.path.isfile('/tmp/1')
    False
    os.path.isfile('/tmp/2.txt')
    True
    判断给出的路径是否是一个文件
    os.path.isdir('/tmp/1')
    True
    判断给出的路径是否是一个目录

    os.path.exists('/tmp/2.txt')
    判断给出的路径是否真实存在

    os.path.isabs('/opt/123')
    判断给出的路径是否是绝对路径

    os.path.split('/data/program/python27/bin')
    解析路径的dirname和basename

    os.name()
    platform.uname()
    打印操作系统平台信息

    os.chmod('/tmp/2.txt',0777)
    修改文件或目录的权限,记住要带第一位的权限位

    os.rename('/tmp/2.txt','/tmp/3.txt')
    重命名文件或目录
    
    os.makedirs('/tmp/4/3/2/1')
    创建多级目录
    os.mkdir('/tmp/4')
    创建单级目录

    os.stat('/tmp/3.txt')
    返回文件或目录的属性

2.文件的操作:
    open:
        打开一个文件

    打开文件的权限
        w:以写的方式打开,如果文件不存在就创建
        a:以追加,不会把原文件内容清空
        r:以只读
        r+:以读写
        w+:以读写
        w和w+的方式都会把原文件内容清空类似与覆盖追加
        rb:
        wb:
        rb+:
        wb+:
    打印输出:
        read():读取open打开的文件内容,默认全部
        readline():读取每一行返回的字符串
        readlines():读取多行返回的列表
    open(path,mode)

    fp = open('/tmp/3.txt',r)
    fp.read()
    fp.readline()
    fp.readlines()
    以上只能读取文件内容不能修改


    关闭文件对象:fp.close()

    fp = open('/tmp/3.txt',w),open('/tmp/3.txt',w+)
    fp.write()
    fp.writelines()
    注意:(W  W+)会覆盖掉原文件内容
         关闭之后内容才会保存至硬盘上的文件
    fp.close()

    fp = open('/tmp/3.txt',a)
    以追加方式打开文件
    原文件内容不会被覆盖
    同样也是需要关闭文件对象
    fp.close()
    
    with open('3.txt',a) as 变量:
        变量.write()
        变量.read()
    他会自动的执行变量.close()

    fp = open('/tmp/3.txt',r)
    fp.tell():打印当前光标所在文件的字符位数上
    fp.seek(1):把光标移动倒文件当前的位置
    fp.seek(2):把光标移动倒文件末尾位置

拷贝文件或目录
    import shutil
    shutil.copyfile(src,dst) 只能拷贝文件
    shutil.copytree(src,dst)拷贝目录为一个新的名称的目录
    
    
    3.import sys
    sys.argv:打印所有参数
    sys.argv[0]:打印文件名
    sys.argv[1]:打印第一个参数
    sys.argv[2]:打印第二参数
    len(sys.argv):打印参数个数

4.re

re 是python查找的工具

复习:python中的正则
     .

    [ ]
    [^]
    *
    ?
    +
    ()
    ^
    $

import re

re.match:从字符串开头进行匹配
re.search:从字符串第一个开始匹配一直到最后一个,但是只匹配第一次出现的
如果要查看match和search匹配到的内容使用group或者groups

re.findall:全文搜索,可以匹配多个出现内容
re.sub:搜索替换
re.split:指定分割符

re.S:会匹配倒换行符
re.I:忽略大小写
re.M:匹配多行

5.函数:

shell函数定义:

     def function_name(){.......}

python函数定义:

    def function_name():

            代码快

定义:

(1)def fp(x):

print x ------------->也可以不定义用占位符pass

引用:

    fp(1)|fp(1.2.3....)

(2)def fp(x,y):

         print x,y

引用:fp(2,3)
    fp(x=2,y=3)
    fp(y=3,x=2)

(3)  def fp(*x):

                print x

引用:    fp(1)-------------------------------------》返回的使用一个元组
                fp(1,2) --------------------------------》返回的使用一个元组
                fp(1,2.......) -----------------------------------》返回的使用一个元组

(4) def fp(**x):

                   print x

引用: fp(x=1,y=2,z=3......)------------------------------> 返回的是一个字典

(5) def f5(x,*args,**kwargs):

            print x

            print args

            print kwargs

引用:f5(1,2,3,4,z=1,y=2)

------------》返回如下:

    x = 1
    (2,3,4)
    {'z':1,'y':2}

5.1装饰器:

     对原函数进行扩展使用,而不需要修改原函数内容的        装饰器其实就是一个函数

装饰器的定义:

    def deco(func):
        def warpper():
            print 'ok'
            func()
            print 'ok'
        return warpper

引用:

    @deco
    def show():
        print 'i am from mars'

    show()
        ok
        i am from mars
        ok

5.3匿名函数:lambda

格式:    lambda var : expression

例:

    lamdba a : a*20
    f1 = lamdba a : a*20
    f1(10)
    200
    用途:用于短小简单功能的函数

5.4递归:

    def fact(n):
        if n <= 1:
            return 1
        else:
            return n * fact(n-1)
            #return n*(n-1)

© 著作权归作者所有

共有 人打赏支持
d
粉丝 4
博文 44
码字总数 54288
作品 0
成都
私信 提问
Python 学习笔记 (8)—— sys模块

主要介绍用的比较多的sys的模块命令包括:sys.argv,sys.platform,sys.getdefaultencoding,sys.setdefaultencoding(),sys.getfilesystemencoding(),sys.exit(n),sys.path,sys.modules......

10730
2018/06/29
0
0
Python中os与sys两模块的区别

前言 os与sys模块的官方解释如下: os: This module provides a portable way of using operating system dependent functionality. 这个模块提供了一种方便的使用操作系统函数的方法。 sys:...

xiaoge2016
2018/04/22
0
0
系统--import--sys--多线程--import--thread--queue--

-- --import------import sys 模块---系统相关---------------------------------------------------------------------------- -- --12.1-------------import------import sys 模块---系统相......

liapple6
2018/10/28
0
0
python异常处理

#!/usr/bin/python import traceback try: 1/0 #except Exception,e: # print traceback.format_exc() except Exception as e: print e #!/usr/bin/python import traceback try: 1/0 #excep......

整理秀逗的脑袋
2011/12/29
492
1
Python第三章模块-张明阳-专题视频课程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a2011480169/article/details/83580545 Python第三章模块—142人已学习 课程介绍 介绍Python在项目当中常用的...

安静的技术控
2018/04/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

关于360插件化Replugin Activity动态修改父类的字节码操作

近期在接入360插件化方案Replugin时,发现出现崩溃情况。 大概崩溃内容如下: aused by: java.lang.ClassNotFoundException: Didn't find class "x.x.x.xActivity" on path: 我自己在插件代码......

Gemini-Lin
44分钟前
0
0
mybatis缓存的装饰器模式

一般在开发生产中,对于新需求的实现,我们一般会有两种方式来处理,一种是直接修改已有组件的代码,另一种是使用继承方式。第一种显然会破坏已有组件的稳定性。第二种,会导致大量子类的出现...

算法之名
昨天
17
0
单元测试

右键方法 Go To --> Test,简便快速生成测试方法。 相关注解 @RunWith(SpringRunner.class) 表示要在测试环境中跑,底层实现是 jUnit测试工具。 @SpringBootTest 表示启动整个 Spring工程 @A...

imbiao
昨天
4
0
欧拉公式

欧拉公式表达式 欧拉公式的几何意 cosθ + j sinθ 是个复数,实数部分也就是实部为 cosθ ,虚数部分也就是虚部为 j sinθ ,对应复平面单位圆上的一个点。 根据欧拉公式和这个点可以用 复指...

sharelocked
昨天
5
0
burpsuite无法抓取https数据包

1.将浏览器和burpsuite的代理都设置好 2.在浏览器地址栏输入: http://burp 3.下载下面的证书,并将证书导入浏览器 cacert.der

Frost729
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部