Home > Article > Backend Development > Python data flow operations
Python file or folder operations
shutilThis module provides many advanced multi-file and multi-file collection operations, especially support for file copying and deletion. function.
1. Folder and file operations
import shutil shutil.copyfile(src, dst) 复制文件src的内容到文件dst,dst必须是完整的目标文件名,如果dst已经存在,它将会被替换 shutil.copy(src, dst) 复制文件src到文件或文件夹dst。如果dst是一个文件夹,与src相同名字的文件在dst下被创建或重写。 shutil.copytree(src, dst, symlinks=False, ignore=None) 递归的复制src下的整个目录到文件夹dst,dst不能是已经存在的,如果不存在,它将会被创建。 shutil.rmtree(path) 删除path整个目录树内容 os.rmdir(path)、 删除文件夹path,path必须是空文件夹,否则报OSError错误 shutil.move(src, dst) 递归的移动src到另一个位置dst,src可以是一个文件或一个文件夹
2, traverse each file under the folder
import osnames = os.listdir(src)for name in names: srcname = os.path.join(src, name) fo = open(srcname, 'r') for line in fo: print line
3, determine whether the folder exists, create it if it does not exist
if not os.path.exists(FILE_PATH): os.makedirs(FILE_PATH)
def get_conn(): import MySQLdb try: conn=MySQLdb.connect(host=HOST,user=USER,passwd=PASSWORD, port=PORT, db=DBNAME, charset=CHARSET) return conn except MySQLdb.Error,e: print "Mysql Error %d: %s" % (e.args[0], e.args[1])# 插入操作def insert_one(cur,sql,value): res = cur.execute(sql ,value) # 插入成功,res 返回值为1 if 1 != res : print 'failed' else: print 'success'def insert_many(cur,sql,values): res = cur.executemany(sql ,values) # 插入成功,res 返回值为1 if 1 != res : print 'failed' else: print 'success'getRC = lambda cur: cur.rowcount if hasattr(cur,'rowcount') else -1# 更新操作def update(cur,sql): cur.execute(sql) return getRC(cur)# 删除操作def delete(cur,sql): cur.execute(sql) return getRC(cur)# 只获取一条记录,返回的是一个元组def fetch_one(cur,sql): count = cur.execute(sql) result = cur.fetchone() return result# 获取多条数据;返回的是二维元组def fetch_all(cur,sql): count = cur.execute(sql) results = cur.fetchall() return results# 提交的完成操作def finish(conn): conn.commit() conn.close()
shutilThis module provides many advanced multi-file and multi-file collection operations. In particular, functions that support file copying and deletion are provided.
1. Folder and file operations
import shutil shutil.copyfile(src, dst) 复制文件src的内容到文件dst,dst必须是完整的目标文件名,如果dst已经存在,它将会被替换 shutil.copy(src, dst) 复制文件src到文件或文件夹dst。如果dst是一个文件夹,与src相同名字的文件在dst下被创建或重写。 shutil.copytree(src, dst, symlinks=False, ignore=None) 递归的复制src下的整个目录到文件夹dst,dst不能是已经存在的,如果不存在,它将会被创建。 shutil.rmtree(path) 删除path整个目录树内容 os.rmdir(path)、 删除文件夹path,path必须是空文件夹,否则报OSError错误 shutil.move(src, dst) 递归的移动src到另一个位置dst,src可以是一个文件或一个文件夹
2, traverse each file under the folder
import osnames = os.listdir(src)for name in names: srcname = os.path.join(src, name) fo = open(srcname, 'r') for line in fo: print line
3, determine whether the folder exists, create it if it does not exist
if not os.path.exists(FILE_PATH): os.makedirs(FILE_PATH)
def get_conn(): import MySQLdb try: conn=MySQLdb.connect(host=HOST,user=USER,passwd=PASSWORD, port=PORT, db=DBNAME, charset=CHARSET) return conn except MySQLdb.Error,e: print "Mysql Error %d: %s" % (e.args[0], e.args[1])# 插入操作def insert_one(cur,sql,value): res = cur.execute(sql ,value) # 插入成功,res 返回值为1 if 1 != res : print 'failed' else: print 'success'def insert_many(cur,sql,values): res = cur.executemany(sql ,values) # 插入成功,res 返回值为1 if 1 != res : print 'failed' else: print 'success'getRC = lambda cur: cur.rowcount if hasattr(cur,'rowcount') else -1# 更新操作def update(cur,sql): cur.execute(sql) return getRC(cur)# 删除操作def delete(cur,sql): cur.execute(sql) return getRC(cur)# 只获取一条记录,返回的是一个元组def fetch_one(cur,sql): count = cur.execute(sql) result = cur.fetchone() return result# 获取多条数据;返回的是二维元组def fetch_all(cur,sql): count = cur.execute(sql) results = cur.fetchall() return results# 提交的完成操作def finish(conn): conn.commit() conn.close()
The above is the detailed content of Python data flow operations. For more information, please follow other related articles on the PHP Chinese website!