【问题标题】:Accessing directories and files using python使用python访问目录和文件
【发布时间】:2013-01-29 02:30:27
【问题描述】:

我想通过 python 脚本分析我的数据。数据在多个文件中,它们保存在不同的目录中。此外,这些目录中的文件名相同,但扩展名不同。我只想通过提供一个输入文件名来获得我的输出。例如

我的文件名是“测试”,这将是我的输入

实际文件名假设为 test.data1、test.data2、test.data3、test.data4,其中 test1.data1 和 test2.data2 两个输入文件保存在 test1、test2 目录中。 test3 和 test4 是输出目录。我的目标是通过 python 脚本访问这些目录,然后访问这些数据文件。所有四个目录都存在于我的机器中,但将通过脚本生成扩展名为 .data3 和 .data4 的两个输出文件。我已经开始使用以下脚本,但我无法完成它。任何帮助将不胜感激

import re
import numpy
import os
import glob
filename =raw_input('enter the input file name: ')
lines = open(input.data1, 'r').readlines()
lines1 = open(input.data2, 'r').readlines()
outfile1=open(input.data3, 'w')
outfile2=open(input.data4, 'w')

最好的 戒律

【问题讨论】:

  • but I can't complete it - 为什么不呢?你被什么困住了?
  • 我是 python 新手。我被困在访问目录然后访问文件。

标签: python


【解决方案1】:

好的,所以您在访问文件和目录时遇到问题...如果您想查看目录中有哪些文件,您可以执行以下操作:

for files in os.listdir("./Downloads"):
  print files

如果您想从用户那里获取文件名并打开该文件进行阅读:

filename = raw_input("what is the file name? ")
try:
    fp = open(filename, "r")
catch:
    print "couldn't open file"

您的代码现在的主要问题之一是您要求提供文件名:

filename =raw_input('enter the input file name: ')

那么你永远不会使用它。相反,您尝试打开您的程序中甚至没有定义的input.data1。如果你想打开一个硬编码路径的文件,你可以这样做:'input.data1' 假设你的文件名为'input.data1'

您还可以在硬编码的特定路径下打开文件,例如:

lines = open("./input/data1", "r").readlines()

希望对您有所帮助,您的问题不是很具体,因此很难给出更好的答案。

【讨论】:

  • 两个输入假设 input.data1 和 input.data2。如何仅通过传递“输入”字符串来访问这两个数据文件。在 shell 脚本中,如果我定义 i=input,那么这两个文件是 $i.data1 和 $i.data2。 python中的语法是什么
  • 你是说如果你有i = raw_input(),输入是字符串"input"?在这种情况下,您连接 i+".data1" 以获取字符串 "input.data1" 还是您试图不对其进行硬编码?
猜你喜欢
  • 2013-05-19
  • 2018-04-19
  • 2019-06-25
  • 2017-01-24
  • 2015-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-26
相关资源
最近更新 更多