python 模块

较为基础的内容不做阐述。只写一写比较新或者快要忘记的内容
搜索路径
1、当前目录
2、path下的每一个目录
3、查看默认路径
命名空间和作用域
要在函数内部对全局变量赋值,必须用global语句
dir()函数
dir函数一个排好序的字符串列表,内容是一个模块里定义过的名字。返回列表容纳了在一个模块里定义的所有模块,变量和函数
globals()和locals()
根据调用的地方不同,globals和locals函数可被用来返回全局和局部明明空间里的名字,如果在函数内调用locals,返回的所有能在该函数内访问的命名,在函数内调用globals,返回所有在该函数内能访问的全局名字,两个函数返回类型都是字典,所以名字们可以用key()函数摘取
reload()函数
当一个模块被导入到一个脚本,模块顶层部分的代码只会被执行一次,因此,如果你想重新执行模块里顶层部分的代码,可以用reload函数,该函数会重新导入之前倒入过得模块,语法如下

reload(moudule_name)

在这里,module_name要直接放模块的名字,而不是一个字符串形式,比如想重载hello模块,如下:

reload(hello)

python IO

读取键盘输入

row_input函数input函数
实例

a = input("input:")
print("输出:"+a)

输出

input:1
输出:1

python3中,raw_input与input整合,不再有raw_input

打开和关闭文件

open函数
语法:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

参数意义:

  • file: 必需,文件路径(相对或者绝对路径)。
  • mode: 可选,文件打开模式
  • buffering: 设置缓冲
  • encoding: 一般使用utf8
  • errors: 报错级别
  • newline: 区分换行符
  • closefd: 传入的file参数类型

mode各模式符号:
python中字符串可以使二进制数据,而不是仅仅是文字。

  • t-文本模式(默认)
  • x-写模式,新建一个文件,如果已存在则报错
  • b-二进制模式
  • +-打开一个文件进行更新(可读可写)
  • U-通用换行模式
  • r-只读,文件指针在文件的开头,默认模式
  • r+-打开一个文件用于读写,文件开头
  • rb-以二进制格式打开一个文件,只读,文件开头,默认模式,一般用于非文本文件如图片。
  • rb+-二进制打开文件读写,文件开头,用于非文本
  • w-写入,文件存在,覆盖内容,不存在,创建文件
  • w+-比w多读权限
  • wb+-二进制打开文件用于读写,存在,打开覆盖,不存在,创建文件,用于非文本
  • a-打开一个文件用于追加,存在,文件指针指向结尾,不存在,创建文件
  • a+-比a多读权限
  • ab-二进制,追加,存在则结尾,不存在,创建
  • ab+-比ab多读权限。

file对象的属性

  • file.closed-true:文件已被关闭,false:未关闭

  • file.mode-返回文件访问模式

  • file.name-返回文件名称

  • file.softspace-如果用print输出后必须跟一个空字符,则返回false,否则返回true

  • close()函数,当file对象被重新赋值时,前一个文件会自动关闭。

  • write()函数不会在字符串的结尾添加换行符

  • read([count]),被传递的参数是要从一打开的文件中读取的字节计数,该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多的读取更多的内容,很可能是直到文件的末尾。

文件定位

  • tell()方法告诉你文件内的当前位置。下一次读写就发生在文件开头这么多字节之后
  • seek(offset[,from])方法改变当前文件的位置,offset表示要移动的字节数,from制定开始移动字节的参考位置。如果from为0,这意味着文件的开头作为移动字节的参考位置,如果设为1,则使用当前的位置作为参考位置,如果它被设为2,那么该文件的末尾将被作为参考位置。

重命名和删除文件

os模块

  • os.rename(current_file_name,new_file_name)
  • os.remove(file_name)

python目录

  • os.mkdir('newdir')-在当前目录下创建新的目录。
  • os.chdir('newdir')-用chdir改变当前的目录
    实例
    import os
    # 将当前目录改为"/home/newdir"
    os.chdir("/home/newdir")
  • os.getcwd()-显示当前的工作目录
  • os,redir('dirname')-删除目录。

python file 方法

  • file.flush()-刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件,而不是被动的等待输出缓冲区写入
  • file.fileno()-返回一个整型的文件描述符,可以用在如os模块的read方法等一些底层操作上。
  • file.isatty()如果文件链接到一个终端设备返回true,否则返回false
  • file.next()-返回文件下一行
  • file.readline()-读取整行,包括'\n'字符
  • file.truncate([size])-截取文件,截取的字节通过size指定,默认为当前文件的位置
  • file.write(str)-将字符串写入文件,返回的是写入的字符串的长度
  • file.writelines(seq)-项文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符