打印csv fi中存储的文件路径列表时,“\\”变为“\\\”

2024-06-13 13:10:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想得到存储在csv文件中的img filepath字典列表,如下所示: 这是我在excel中输出的csv文件的图片: input

这是我的密码:

def read_cell(filelocation,column_name,row_index):
    with open(filelocation, 'r',encoding="utf8") as f:
        reader = csv.DictReader(f,delimiter=',')
        y_count = 1
        for n in reader:
            if y_count == row_index:
                cell = n[column_name]
                return cell
            y_count += 1

id_item="1812242028"
img_list_query=[]
for row in range(100):
    product_id=read_cell(img_file,"PRODUCT_ID",row)
    if product_id==id_item:
        img_list_query.append(read_cell(img_file,"IMG_FILE_NAME",row))
print(img_list_query)   

以及上述代码的结果:

['C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_0', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_1', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_2', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_3', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_4', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_5', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_6', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_7', 'C:\\\\Users\\\\admin\\\\Desktop\\\\set-5-goi-mat-na-trai-cay-duong-da-real-nature-mask_8']

我不知道为什么“\”变成“\”

请给我一些关于这个问题的解释和解决方法?谢谢


Tags: imgadminmaskrealusersdanaturedesktop
1条回答
网友
1楼 · 发布于 2024-06-13 13:10:16

\是一个“escape character”。意思是下一个字符是“特殊的”。它允许字符串包含否则很难表示的特殊字符。例如\n表示“换行”,而\t表示“水平制表符”。那么如何表示单个\?你使用\\,意思是字面上的\

\被选中是因为它是一个不寻常的字符。不幸的是,早在1981年,微软就选择\作为MS-DOS的路径分隔符。将近40年后,Windows保持了这一传统,因此Windows路径常常被多个\字符装饰。诀窍是只转义一次-所以在创建字符串时,\应该变成\\来保护它。它不应该再从那里逃走了。当您看到\\\\时,转义已经执行了两次

相关问题 更多 >