1. 判断指定目录是否存在:

os.path.exists(input_folder)

2. 判断指定目录是不是文件夹

os.path.isdir(input_folder)

3. 判断指定目录是不是文件

os.path.isfile(input_folder)

4. 判断指定文件是不是图片(判断给定文件是何种图片类型)

import imghdr
img_list= {'jpg','bmp','png','jpeg','rgb','gif','pbm','ppm','tiff','xbm'}
if imghdr.what(input_filename) not in img_list: print(not image)

5. 判断指定txt(文件)是否为空

import os
if os.path.getsize('test.txt') is 0:
print('test.txt is empty!')

6. 按行读取txt文件内容

f = open('test.txt', "r")
lines = f.readlines()
for line in lines:
print line
line = line.strip('\n') # 去掉换行符号 '\n'
print line

7. 遍历指定目录文件夹下所有文件

for file in sorted(glob.glob(os.path.join(input_folder, '*.*'))):
print(file)

8. 在python程序中兼容路径中的中文符号

for file in sorted(glob.glob(os.path.join(input_folder, '*.*'))):

    file = unicode(file,'utf-8')

9. 判断文件夹是否存在,不存在则创建,存在则删除后再创建:

if not os.path.exists('folder1'):
os.makedirs('folder1')
else:
shutil.rmtree('folder1') os.makedirs('folder1')

10. 创建一个txt文件并写入,如果存在则清空后写入:

f = open('test.txt', "wt")
f.writelines('test' + '\n')
f.close()

11. 判断路径(字符串) path_str 中是否有中文字符:

# coding:utf-8
for ch in path_str.decode('utf-8'): if u'\u4e00' <= ch <= u'\u9fff':
print('chinese character founded!')

12. os.walk 遍历文件夹下所有文件(包括文件夹下的文件夹内文件)

for root, dirs, files in os.walk(INPUT_FOLDER):
for file in files:
item = os.path.join(root,file)
print(item)

13. 在python程序中获取文件或文件夹的绝对权限:

if os.path.exists(input_pathof_fileOrdir):

    os.system("chmod 777  %s" % './{0}'.format(input_pathof_fileOrdir))

python中13个实用的文件操作的更多相关文章

  1. python中几个实用的文件操作

    1. 判断指定目录是否存在: os.path.exists(input_folder) 2. 判断指定目录是不是文件夹 os.path.isdir(input_folder) 3. 判断指定目录是不是 ...

  2. Python 中当前位置以及目录文件遍历操作

    Python 中当前位置以及目录文件遍历操作 当前位置 print(os.path.dirname(__file__)) 其中 dirname 会选择目录(文件夹),"__file__&qu ...

  3. Python学习系列(五)(文件操作及其字典)

    Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件      在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...

  4. 在Python中使用glob模块查找文件路径的方法

    在Python中使用glob模块查找文件路径的方法 glob模块是最简单的模块之一,内容非常少.用它可以查找符合特定规则的文件路径名.跟使用windows下的文件搜索差不多.查找文件只用到三个匹配符: ...

  5. python中configparser模块读取ini文件

    python中configparser模块读取ini文件 ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(se ...

  6. Python中实现对list做减法操作介绍

    Python中实现对list做减法操作介绍 这篇文章主要介绍了Python中实现对list做减法操作介绍,需要的朋友可以参考下 问题描述:假设我有这样两个list, 一个是list1,list1 = ...

  7. devi into python 笔记(五)异常 文件操作 sys os glob模块简单实用

    异常: Java异常: try catch块处理异常,throw引发异常. Python异常: try except块处理异常,raise引发异常. 异常如果不主动处理,则会交给Python中的缺省处 ...

  8. python基础(内置函数+文件操作+lambda)

    一.内置函数 注:查看详细猛击这里 常用内置函数代码说明: # abs绝对值 # i = abs(-123) # print(i) #返回123,绝对值 # #all,循环参数,如果每个元素为真,那么 ...

  9. python入门(八):文件操作

    1.数据的保存: 1) 内存:常用的变量都是在内存里面的 缺点:关机或进程死掉数据丢失 解决方法:将数据保存至文件中 2 )文件:文本内容.二进制的文件内容 3 )数据库:保存    2.读文件: 1 ...

随机推荐

  1. 【RTOS】基于V7开发板的最新版FreeRTOS V10.2.0程序模板,含MDK和IAR,支持串口打印任务执行情况

    模板下载: 链接:https://pan.baidu.com/s/1N32Hx7cTbDoRinuzTUB3zw   提取码:6aox 1.MDK使用MDK5.26及其以上版本. 2.IAR使用IAR ...

  2. 小知识:设置sqlplus默认vi编辑器的好处

    如果是客户生产环境,不允许修改任何环境类的配置,那发现sqlplus默认不是我们熟悉的vi,可以在SQL>下临时指定,方便操作: SQL> define_editor=vi SQL> ...

  3. 计算机网络知识(TCP连接,TCP/UDP区别,HTTP与HTTPS,Socket原理等等)

    1.网络七层协议包含,物理层.数据链路层.网络层(ip协议).传输层(TCP传输控制协议.UDP用户数据报协议).会话层.表示层.应用层(http协议).是一个提供的概念架构协议. 2.TCP/IP协 ...

  4. C# loop executed one by one wait the former completed

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. Python有参函数的使用

    1.给定验证码长度n,生成随机验证码,验证码由数字.字母组成(参考chr()内置方法) 程序代码如下: import random def create_check_code(n): check_co ...

  6. 编译原理之不懂就问-First集

    老师PPT: 这条语言实在是..通俗易懂

  7. 一个EMFILE问题定位:lsof、ulimit的应用,以及简单分析

    关键词:errno.EMFILE.ulimit.lsof等等. 背景是在对程序进行压力测试,运行了一段时间之后出现一个复位操作失败. 这个复位操作通过打开一个设备,进行读写操作,已达到控制GPIO输入 ...

  8. java给图片写正反字体,并将二维码写到图片上,代码实现

    /** * @param filePath * 源图片路径 * @param markContent * 图片中添加内容 * @param outPath * 输出图片路径 字体颜色等在函数内部实现的 ...

  9. deepin系统右键刷新-解决增删改文件没有变化

    deepin 新建/删除/修改-->文件/文件夹后 目录不刷新解决方案 方法1: F5键刷新 方法2: 通过修改配置文件-->调整最大文件监控数量(建议使用这种方式) sudo vim / ...

  10. JMeter基础知识系列三

    JMeter测试结果字段的意义: Label:定义HTTP请求名称. Samples:表示这次测试中一共发出了多少个请求. Average:平均响应时长,当使用了Transaction Control ...