プログラムに必要な多数の変数を保存するために csv ファイルを使用しています。os.path を使用して 2 つのファイルへの相対パスを定義し、それらのパスを get_csv_args という関数に送信して csv を開いて情報を解析します。最初のパスは正常に開きますが、2 番目のパスではバックスラッシュがすべてパスで二重になっているため、エラーが発生します。os.path.normpath を使用してみましたが、役に立ちませんでした。
主な機能
import os
from misc.get_csv_args import get_csv_args
def main():
server=os.path.abspath('..\..\server_info.csv')
archive=os.path.abspath('.\CreateDelete_archive_info.csv')
print server
print archive
print str(get_csv_args(server))
print str(get_csv_args(os.path.normpath(archive)))
if __name__ == '__main__':
main()
get_csv_args
import csv, os.path
def get_csv_args(filename):
read_args = csv.reader(open(os.path.normpath(filename), 'rb'))
args = []
for row in read_args:
args = args + row[:2] #Add the first two items in each row to the args list
args = filter(lambda name: name.strip(), args) #Remove whitespace entries from the list
return args
メイン出力
C:\Users\blahblahblah\src\server_info.csv
C:\Users\blahblahblah\src\test_cases\archive\CreateDelete_archive_info.csv
[「サーバー」、「サーバー名」、「UID」、「ユーザー」、「PWD」、「パスワード」]
トレースバック (最新の呼び出しが最後):
何とか何とか何とか
IOError: [Errno 2] そのようなファイルまたはディレクトリはありません: 'C:\\Users\\blahblahblah\\src\\test_cases\\archive\\CreateDelete_archive_info.csv'