pyspark - 如果本地目录已经存在,如何删除它[重复]
Posted
技术标签:
【中文标题】pyspark - 如果本地目录已经存在,如何删除它[重复]【英文标题】:pyspark - how to delete a local directory if it already exists [duplicate] 【发布时间】:2018-03-15 08:17:34 【问题描述】:如果本地目录已经存在,我希望删除它。以下是我的代码:
import sys
import os
from pyspark import SparkContext
from pyspark import SparkConf
conf=SparkConf().setAppName('pyspark')
sc=SparkContext(conf=conf)
data=sc.textFile('file:///home/cloudera/Downloads/SAN_SALES_EXTRACT_TRANS_LEVEL_D0906.txt')
datamap=data.map(lambda x: ((str(x.split(',')[1]).strip(),int(x.split(",")[0])),float(x.split(",")[10])))
datagrouped=datamap.reduceByKey(lambda x,y: x+y)
if (os.path.exists("file:///home/cloudera/Downloads/store_perday_rev")):
os.remove("file:///home/cloudera/Downloads/store_perday_rev")
else:
datagrouped.sortByKey().saveAsTextFile("file:///home/cloudera/Downloads/store_perday_rev")
#for i in datagrouped.sortByKey().take(20):
# print(i)
它不会删除目录。我做错了什么?
【问题讨论】:
【参考方案1】:改用 os.rmdir()。
os.remove() 仅适用于文件路径,不适用于目录。
【讨论】:
它没有用。 os.rmdir("file:///home/cloudera/Downloads/store_perday_rev") 返回“没有这样的文件或目录”【参考方案2】:您可以尝试这些选项。
import os
os.rmdir("C:/test/delete/pydelete")
我可以删除该文件夹。如果您在此文件夹中有数据,那么您需要调用。
shutil.rmtree()
【讨论】:
【参考方案3】:您是要删除目录还是文件?
如果您想删除目录,请参考以下链接:
How do I remove/delete a folder that is not empty with Python?
另请参阅 python 文档: https://docs.python.org/2/library/os.html
【讨论】:
以上是关于pyspark - 如果本地目录已经存在,如何删除它[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何从本地目录中读取,kmeans 流式传输 pyspark
如何使用 PySpark 在桌面本地文件夹的目录中执行文件(pdf、docs、txt、xls)的并行处理?
SQL Server 2008 R2本地订阅不成功,如何删除?