iT邦幫忙

0

Python讀CSV, 出現1: Syntax error: "(" unexpected問題 (更新)

如題

概況
CSV裡面有英文字跟數字跟簡易的符號
Ubuntu 20.04 (VM)
python version 3.9.5

小弟不才對Ubuntu不熟, 上網查可能是shell script執行是sh or bash產生

所以執行 sudo dpkg-reconfigure dash, 選擇No

再重新執行出現

line 1: syntax error near unexpected token `('

雖然在CSV中 ( 前加上\, 可以跳過這個問題, 但是會導致後續文件的處理找不到字串

所以想問前輩有什麼好解決方式

謝謝

新增:
讀兩個CSV, 帶入function

 if os.path.exists(testdata_path):
        testDataFile = open(testdata_path, 'r', encoding='utf8')
        for row in csv.DictReader(testDataFile):
 
            dictTestdata = collections.OrderedDict(row)
            case = dictTestdata['case']
            resolution_val = dictTestdata['resolution']
            yymmdd_val = dictTestdata['yymmdd']
            method_val = dictTestdata['method']
 
 
            testCaseFile = open(testcase_path, 'r', encoding='utf8')

            for row in csv.DictReader(testCaseFile):
                dictTestcase = collections.OrderedDict(row)
                count += 1

                info = case + ":" + "_" + row['Mode'] + "_" + kpiitem + "-" + row['Category'] + "_" + row['Group']
                test_func = choose_script_function(dictTestcase, dictTestdata, info)
                seq = '%03d' % count
                print(info)

                format_data = 'test_{0}'.format(
                    str(seq) + ":" + row['Mode'].replace('.', '_dot')
                    + "_" + row['Category'].replace('.', '_dot') + "_" + row['Group'].replace('.', '_dot')
                    + "_" + row['enabled'] + "_" + resolution_val + "_" + yymmdd_val + "_" + method_val)

                setattr(report_test, format_data, test_func)

            testCaseFile.close()
        testDataFile.close()
lion_inin iT邦新手 3 級 ‧ 2021-09-14 15:50:39 檢舉
他錯誤碼是語法錯誤耶,你要不要貼個程式碼上來,不然不好幫你解
twtabc iT邦新手 5 級 ‧ 2021-09-14 16:59:08 檢舉
附上了 謝謝, 不過在windows狀況下執行是OK

我搬到ubuntu上小問題蠻多的

尚未有邦友回答

立即登入回答