Python中F-string将引号包含在{}内的问题求助
F-string多余引号问题修复
你当前的写法错误地用F-string拼接字符串来构造字典,还嵌套了多余的引号,不仅导致生成内容出现重复引号,而且这种方式本身就不符合Python字典的构造逻辑。
错误代码问题点
原代码中的关键行:
videos.append({f"'path: 'videos/{filename}.mp4', 'description': '{filename}'"},)
这里的大括号包裹F-string得到的是集合而非字典,同时F-string内部的引号嵌套让最终生成的字符串多了一层不必要的引号,完全不符合预期的键值对格式。
正确实现方式
直接构造字典对象,无需用F-string拼接字符串:
videos = [] for keys in data: videos.append({'path': f'videos/{filename}.mp4', 'description': filename})
这样每个添加到列表中的元素都是标准的字典,键path和description对应的值不会出现多余引号。
如果filename是来自循环中的keys(比如data是包含文件名的字典列表),可以调整为:
videos = [] for item in data: filename = item.get('filename') # 根据实际键名调整 if filename: videos.append({'path': f'videos/{filename}.mp4', 'description': filename})
内容的提问来源于stack exchange,提问作者Francisco Antunes
相关产品推荐
相关产品推荐

