os模块提供了多数操作系统的功能接口函数。当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行
相应的操作,在python编程时,经常和文件、目录打交道,所以离不了os模块。python编程时,经常和文件、目录打交道,
这时就离不了os模块。
[kiosk@foundation84 ~]$ mkdir python
[kiosk@foundation84 ~]$ cd python/
[kiosk@foundation84 python]$ touch file
[kiosk@foundation84 python]$ ipython
In [1]: import os 导入os模块
In [2]: ls 查看有建立的文件
file
In [3]: os. 查看os模块的用法
In [3]: os.rename('file','westos') 重命名文件
In [4]: ls
westos
In [5]: os.remove('westos') 删除文件
In [6]: ls
In [7]: os.mkdir('test') 建立目录
In [8]: ls
test/
In [9]: os.rmdir('test') 删除目录
In [10]: ls
常用的os模块命令:
1. os.name——name是指操作系统的名字,主要作用是判断目前正在使用的平台,并给出操作系统的名字。
2. os.remove(path)——删除path指定的文件,该参数不能省略。
3. os.rmdir(path)——删除path指定的目录,该参数不能省略。
4. os.mkdir(path)——创建path指定的目录,该参数不能省略。这样只能建立一层,要想递归建立可用:os.makedirs()
title = '模块1'
# 函数
def say_hello():
print '我是%s' % title
# 类
class Dog(object):
pass
title = '模块2'
# 函数
def say_hello():
print '我是%s' % title
# 类
class Cat(object):
pass
# 在导入模块时,每个导入应该独占一行
import test1
import test2
test1.say_hello()
test2.say_hello()
dog = test1.Dog()
print dog
cat = test2.Cat()
print cat
# 在导入模块时,每个导入应该独占一行
# 使用as指定模块的别名(大驼峰命名法)
import test1 as DogModule
import test2 as CatModule
DogModule.say_hello()
CatModule.say_hello()
dog = DogModule.Dog()
print dog
cat = CatModule.Cat()
print cat
# 单独的导入模块中的类或者函数
from test1 import Dog
from test2 import say_hello
# 相同的类名和函数名导入的话会覆盖,应注意使用别名
from test1 import say_hello as test1_say
say_hello()
test1_say()
wangcai = Dog()
print wangcai
python解释器在导入模块的时候,会:
1.搜索当前目录指定的模块文件,如果有就直接导入
2.如果没有,再搜索系统目录
注意:在开发时,给文件起名,不要和系统模块文件重名,会导致不必要的Bug
import random
rand = random.randint(1, 3)
print rand
__name__属性:__name__属性可以做到,测试模块中的代码只在测试情况下被运行而在导入时不会运行;__name__是
python的一个内置属性,记录着一个字符串如果是被其他文件导入时,__name__就是模块名;如果是当前执行的程序,
__name__就是__main__.
# 全局变量,函数,类直接执行的代码不是向外界提供的工具
def say_hello():
print 'hello hello'
# 运行__name__时输出是__main__
if __name__ == '__main__':
print __name__
print 'xfl开发的程序'
say_hello()
在很多python文件中会看到以下格式的代码
#导入模块
#定义全部变量
#定义类
#定义函数
#在代码的下方
def main():
pass
if __name__ == '__main__'
main()