小编Ale*_*lex的帖子

我想通过(Python)创建一个解压缩(.tar.gz)文件的脚本

我正在尝试制作一个脚本,用于从一个目录中的文件夹中解压缩所有.tar.gz文件.例如,我将调用一个文件(testing.tar.gz).然后如果我手动操作,我可以按"提取",然后.tar.gz文件将创建一个新文件,并调用testing.tar.最后,如果我重复按"提取此处"的过程,.tar文件会将所有.pdf文件生成.

我想知道我怎么能这样做,而且我的代码在这里,似乎并不是现实的工作.

import os
import tarfile
import zipfile

def extract_file(path, to_directory='.'):
    if path.endswith('.zip'):
        opener, mode = zipfile.ZipFile, 'r'
    elif path.endswith('.tar.gz') or path.endswith('.tgz'):
        opener, mode = tarfile.open, 'r:gz'
    elif path.endswith('.tar.bz2') or path.endswith('.tbz'):
        opener, mode = tarfile.open, 'r:bz2'
    else: 
        raise ValueError, "Could not extract `%s` as no appropriate extractor is found" % path

    cwd = os.getcwd()
    os.chdir(to_directory)

    try:
        file = opener(path, mode)
        try: file.extractall()
        finally: file.close()
    finally:
        os.chdir(cwd)
Run Code Online (Sandbox Code Playgroud)

python gzip unzip tar

37
推荐指数
3
解决办法
6万
查看次数

R中的.csv数据操作而不是python

我有一个简单的.csv格式数据,需要先进行操作才能创建符合此数据的绘图.但是,我理解如何从python中操作.csv格式数据.我想在R中应用相同的逻辑,但我不知道如何做到这一点.

下面是来自.csv文件的示例数据,但加载到R.我已经为我们创建了代码来讨论这个问题.

df <- data.frame(Name = c("AC", "AC", "PT", "PT", "OR", "OR"),
    useless_column = c("","","A",3,4," "),
  measurement = c("H", "", "K", "M", "", "H"),
  amount = c(12, 54, 20, 87, 75, 22),
    useless_column = c("","","A",3,4," ")) 
Run Code Online (Sandbox Code Playgroud)

在python中,我通常会这样做:

import csv
import os
import glob
import sys
fileList = glob.glob("R:xxxxxxxxxxxxxxxxxxxxx\*.csv")
for inputFile in fileList:
        outputFilename = inputFile + "output.csv"
        csvInput = csv.reader(open(inputFile,'r'),delimiter=",")
        outputFile = open(outputFilename,'w')
        outputFile.write("Name,measurement,amount\n")
        csvInput.next()
        for line in csvInput:
            if line[2] == "H":
               meas = "100"
            elif line[2] == "K": …
Run Code Online (Sandbox Code Playgroud)

python csv r

3
推荐指数
1
解决办法
103
查看次数

标签 统计

python ×2

csv ×1

gzip ×1

r ×1

tar ×1

unzip ×1