簡體   English   中英

使用python訪問目錄和文件

[英]Accessing directories and files using python

我想通過python腳本分析我的數據。 數據位於多個文件中,並保存在不同的目錄中。 而且,這些目錄中的文件名相同但擴展名不同。 我想通過提供單個輸入文件名來獲取輸出。 例如

我的文件名是'test',這將是我的輸入

實際的文件名是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')

最好的Sudipta

好的,所以你在訪問文件和目錄時遇到問題...如果你想查看目錄中的文件,你可以這樣做:

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()

希望有所幫助,你的問題不是很具體,所以很難給出更好的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM