【问题标题】:how to take .csv file as an input如何将 .csv 文件作为输入
【发布时间】:2018-11-06 13:21:06
【问题描述】:

这是我的代码,我将输入作为一个句子,并从给定的语料库中预测下一个单词。 但我的问题是我想将 .csv 文件作为输入并逐行迭代并将结果保存在另一个 .csv 文件中

def takeInput():
    cond = False
    #take input
    while(cond == False):
        sen = input('Enter the string\n')
        sen = removePunctuations(sen)
        temp = sen.split()
        if len(temp) < 3:
            print("Please enter atleast 3 words !")
        else:
            cond = True
            temp = temp[-3:]
    sen = " ".join(temp)
    return sen


    input_sen = takeInput()
    word_choice = chooseWords(input_sen, bi_prob_dict, tri_prob_dict, quad_prob_dict)
    prediction = PredictiontheRes(input_sen, bi_dict, tri_dict, quad_dict, vocab_dict,token_len, word_choice, param)
    print('Word Prediction:',prediction)

【问题讨论】:

    标签: python-3.x python-2.7 csv


    【解决方案1】:

    我会使用一个参数解析器 - 下面的示例 - 并添加一个类似 -c 的标志来表示一个 csv 文件名,而不是文件本身。

    然后,您必须根据需要编写逻辑。如果存在 -c 标志,请检查文件是否存在并使用 csv 解析器库 - 如下所示 - 并遍历文件。

    argparse* - https://docs.python.org/3/library/argparse.html

    csv* - https://docs.python.org/3/library/csv.html

    * 如果您使用的是 Python 2.x,请将链接更改为指向 2,或考虑使用 3。

    提供的链接中有很棒的代码示例。

    [编辑] - 最小示例

    import csv
    import argparse
    import sys
    
    parser = argparse.ArgumentParser('csv')
    parser.add_argument('csv')
    args = parser.parse_args()
    
    if len( sys.argv ) > 1:
      with open( args.csv ) as csvFile:
        reader = csv.reader(csvFile, delimiter=',')
        with open( args.csv+'output.csv', 'w') as outputCsvFile:
          writer = csv.writer(outputCsvFile, delimiter=',')
          for line in reader:
            processedLine = ['|'] + line + ['|']
            #process line
            writer.writerow( processedLine )
    

    如果你这样调用这个脚本: python script.py myCsv.csv 然后脚本会处理文件'myCsv.csv',处理它,然后写入'myCsv.csvoutput.csv'

    【讨论】:

    • @wrinkledcheee...感谢您的链接,但我仍然无法找到解决方案
    • 而不是输入一个句子我想将.csv文件作为输入并遍历csv文件的每一行
    • 添加最小示例
    猜你喜欢
    • 1970-01-01
    • 2020-05-17
    • 1970-01-01
    • 2021-02-09
    • 1970-01-01
    • 2020-04-04
    • 2019-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多