python file 操作

代码环境; windows7 + python2.7 + notepad++ (使用插件PyNPP notepad++ 插件管理中可以下载使用)

1.打开包含中文路径文本

  

#!/usr/bin/env python
# -*- coding: utf-8 -*-

uipath = u'F:\VC\编程资料.txt' #或 unicode(filepath, 'utf-8')
f = open(uipath, 'r')
for text in f.readlines():
	print(text)
f.close()

2.读取utf8格式的文本

uipath = u'F:\VC\编程资料.txt' #或 unicode(filepath, 'utf-8')
f = open(uipath, 'r')
for text in f.readlines():
	print(text.decode('utf-8'))#重点
f.close()

3.关键编码的说明

  sys.setdefaultencoding("utf-8") #python默认是以ascii进行编解码,跟"coding: UTF-8 "头无关
  print u'你们' + '我的' # 这样就可以混合串接打印,python会自动以utf-8编码方式先将"我的"转unicode,后一起encode
  所以在python2.7中,setdefaultencoding()非常重要,可以避免很多编码错误。

4.目录操作

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys


path = r'f:\2015'
listfile = os.listdir(path)
filename = open(path + '\\file.txt', 'w')
for line in listfile:
	if(os.path.isfile(path + '\\' + line)):
		filename.write(line + u":是文件".encode('gbk') + '\n') #电脑环境是gbk,所有line是gbk格式, u":是文件" 表示 unicode 编码
	if(os.path.isdir(path + '\\' + line)):
		filename.write(line + u":是目录".encode('gbk') + '\n')
filename.close()

6.文件夹移动

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
import shutil

#移动一个文件夹下面的目录和文件到另一个文件夹
def moveDir(olddir, newdir):
	olddirname = os.path.split(olddir)
	newdirTmp = newdir + '\\' + olddirname[1]
	if(not os.path.exists(newdirTmp)):
		shutil.move(olddir, newdir)
	else:
		shutil.rmtree(newdirTmp)
		shutil.move(olddir, newdir)
		
olddir = r'F:\2015\python\olddir'
newdir = r'F:\2015\python\newdir'
moveDir(olddir, newdir)



阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xingkongyingke/article/details/50272723
个人分类: Python
上一篇python 5 条件判断和循环
下一篇安装tushare库
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭