python操作hdfs_python 操作hdfs
from hdfs.client importClient#关于python操作hdfs的API可以查看官网:#https://hdfscli.readthedocs.io/en/latest/api.html
#读取hdfs文件内容,将每行存入数组返回
defread_hdfs_file(client, filename):#with client.read('samples.csv', encoding='utf-8', delimiter='\n') as reader:
#for line in reader:
#pass
lines =[]
with client.read(filename, encoding='utf-8', delimiter='\n') as reader:for line inreader:#pass
#print line.strip()
lines.append(line.strip())returnlines#创建目录
defmkdirs(client, hdfs_path):
client.makedirs(hdfs_path)#删除hdfs文件
defdelete_hdfs_file(client, hdfs_path):
client.delete(hdfs_path)#上传文件到hdfs
defput_to_hdfs(client, local_path, hdfs_path):
client.upload(hdfs_path, local_path, cleanup=True)#从hdfs获取文件到本地
defget_from_hdfs(client, hdfs_path, local_path):
client.download(hdfs_path, local_path, overwrite=False)#追加数据到hdfs文件
defappend_to_hdfs(client, hdfs_path, data):
client.write(hdfs_path, data, overwrite=False, append=True, encoding='utf-8')#覆盖数据写到hdfs文件
defwrite_to_hdfs(client, hdfs_path, data):
client.write(hdfs_path, data, overwrite=True, append=False, encoding='utf-8')#移动或者修改文件
defmove_or_rename(client, hdfs_src_path, hdfs_dst_path):
client.rename(hdfs_src_path, hdfs_dst_path)#返回目录下的文件
deflist(client, hdfs_path):return client.list(hdfs_path, status=False)#client = Client(url, root=None, proxy=None, timeout=None, session=None)#client = Client("http://hadoop:50070")
client = Client("http://120.78.186.82:50070/",root="/",timeout=10000,session=False)#client = InsecureClient("http://120.78.186.82:50070", user='ann');
#move_or_rename(client,'/input/2.csv', '/input/emp.csv')#read_hdfs_file(client,'/input/emp.csv')
put_to_hdfs(client, 'D:\\bbb.txt', '/file')#append_to_hdfs(client,'/input/emp.csv','我爱你'+'\n')#write_to_hdfs(client, '/emp.csv', "sadfafdadsf")#read_hdfs_file(client,'/input/emp.csv')#move_or_rename(client,'/input/emp.csv', '/input/2.csv')#mkdirs(client,'/input/python')#print(list(client, '/'))#chown(client,'/input/1.csv', 'root')
python操作hdfs_python 操作hdfs相关推荐
- Python模块MySQLdb操作mysql出现2019错误:Can't initialize character set utf-8
我使用python的MySQLdb模块实现了一个mysql client, 在测试时,出现了如下错误 Python模块MySQLdb操作mysql出现2019错误:Can't initialize c ...
- Python 炫技操作:合并字典的七种方法
来源 | Python编程时光(ID: Cool-Python) Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的.在这些人的眼里,能够写出那些一般开发者看 ...
- Python OpenCV像素操作
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:opencv学堂 Python OpenCV像素操作 环 ...
- python列表字典操作_Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结...
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- python 实现卷积操作
python实现卷积操作 调用tf.nn.conv2d()实现卷积 自己实现卷积函数 我们知道,tensorflow里面自带卷积函数,tf.nn.conv2d()就可以实现相关功能,本文主要是自己实现 ...
- python列表按照指定顺序排序-Python常见排序操作示例【字典、列表、指定元素等】...
本文实例讲述了Python常见排序操作.分享给大家供大家参考,具体如下: 字典排序 按value排序 d1 = {"name":"python","b ...
- python界面设置-PYTHON图形化操作界面的编程七__创建菜单
PYTHON图形化操作界面的编程七__创建菜单 十八.创建菜单 1.水平菜单的创建 创建菜单需要多条语句,所以这里通过实例来说明水平菜单的创建方法: 下面的语句可以在窗口中添加水平菜单,其中前四行语句 ...
- python与excel做数据可视化-Python的Excel操作及数据可视化
Excel表操作 python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库. 安装xlrd pip install xlrd 简单的表格读取 ...
- python切片语法-Python字符串切片操作知识详解
python 中关于字符串切片的一个问题 aa[0:6] 表示取 第0,1,2,3,4,5 位的数据 所以是6个 123456 aa[:-1] 表示取开始到倒数第二位的数据 所以也是123456 就像 ...
最新文章
- 使用libre office writer 为文档添加可跳转目录
- 抓包分析TCP的三次握手和四次分手
- Zabbix 3.0 配置企业微信报警(注册---测试)
- 转 db_file_multiblock_read_count
- lvs负载均衡的调度算法和工作模式
- python取余什么意思_基于python 取余问题(%)详解
- 8uftp上传失败,6步解决8uftp上传失败问题
- 数学四大思想八大方法_数学四大思想方法
- 系统好看 字体font-family
- 5.3. 虚拟存储管理------页面置换算法
- 为什么网络钓鱼攻击仍然有利可图----以及如何阻止它
- 奥维查看行政边界_【百度地图API】如何获取行政区域的边界? (转载)
- 9.1 爬虫及爬行方式
- 简历-lol学习性项目
- C++的关键字 volatile
- 混沌网格(Chaos Mesh)的设计和工作原理
- provider android简书,Android 7.0 provider属性说明
- c++图形库 allegro 开发(一)
- java 设置rgb颜色_java – 使用XSSFColor设置RGB颜色
- 知更鸟begin主题添加留言者相关信息(国家、浏览器、操作系统、所在区域)