python文件管理

一、文件

f= open('this.txt','w'),open函数会返回一个文件对象,该对象提供了各种操作文件的方法,包括写入-write( )等等

但是write仅仅接受的是字符串。此时有以下几种方法:

(1)强制转换类型,例如用str( )函数,强制化为字符串

   (2)格式化输出,%为关键。比如

>>> 'In %d years I have spotted %g %s.' % (3, 0.1, 'camels')
'In 3 years I have spotted 0.1 camels.'

格式化输出多个时,切记后面要用元组封装起来。并且需要格式化的个数与元组的元素个数必须相等。

(3)format 美观格式化输出:

>>> "The sum of 1 + 2 is {0}".format(1+2)
'The sum of 1 + 2 is 3'

注意大括号内索引的使用format( )的参数是严格按照顺序的,前面格式化的部分,默认是依次来放入值的,但是你也可以认为的设置顺序来达到自己的目的。

二、管理路径的os os.path(当然两者都是通过import os来使用的)

三、管道

大多数操作系统提供了一个命令行的借口,也被称为shell。任何可以在shell中启动的程序,也可以在python中通过使用管道对象(pipe object)来启动。

>>> cmd = 'ls -l'
>>> fp = os.popen(cmd)

返回值是一个行为类似于已经打开文件的对象。可以使用 readline来从ls的进程的输出中读取一行,或者用read读取所有内容。

res = fp.read()

当然最后需要关闭。

>>> stat = fp.close()
>>> print(stat)
None

返回值是 ls 进程的最终状态。None 表示正常结束(没有出现错误)。

四、制作模块

作为模块的程序通常写成以下结构:

if __name__ == '__main__':
    print(linecount('wc.py'))

__name__是一个在程序开始时设置好的内建变量。 如果程序以脚本的形式运行,__name__ 的值为 __main__ ,这时其中的代码将被执行。否则当被作为模块导入时,其中的代码将被跳过。

是的,这里的__name__是一个变量,所以才没有被双引号括起来,但是__main__是一个字符串,而不是变量,所以要有双引号。

我们做个练习,将例子输入到文件 wc.py 中,然后以脚本形式运行它。 接着,打开 Python 解释器并导入 wc 。当模块被导入后, __name__ 的值是什么?

警示:如果你导入一个已经被导入了的模块,Python 将不会做任何事情。它并不会重新读取文件,即使文件的内容已经发生了改变。

如果你要重载一个模块,可以使用内建函数 reload ,但它可能会出错。因此最安全的方法是重启解释器,然后重新导入模块。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值