我试图运行一个Python包来读取JSON文件(配置文件)以获取信息。 问题是我需要将一些JSON文件编辑到包含的目录中。
脚本的创建者使用的是linux内核,因此他使用的是linux路径名,而我使用的是Windows,这需要在我的路径名中使用反斜杠。
这导致了问题。以下是JSON文件的外观:
"train": {
"train_image_folder": "C:/Users/Moondra/Desktop/Object Detection/basic-yolo-keras/train_image_folder",
"train_annot_folder": "C:/Users/Moondra/Desktop/Object Detection/basic-yolo-keras/train_annot_folder",
"train_times": 10,
"pretrained_weights": " ",
"batch_size": 16,
"learning_rate": 1e-4,
"nb_epoch": 50,
"warmup_epochs": 3,
"object_scale": 5.0 ,
"no_object_scale": 1.0,
"coord_scale": 1.0,
"class_scale": 1.0,
"saved_weights_name": "full_yolo_raccoon.h5",
"debug": true
},
"valid": {
"valid_image_folder": "C:/Users/Moondra/Desktop/Object Detection/basic-yolo-keras/valid_image_folder",
"valid_annot_folder": "C:/Users/Moondra/Desktop/Object Detection/basic-yolo-keras/valid_annot_folder",
"valid_times":
1 }
我找到了这个,但在我的案例中并没有什么帮助:
Remove Backslash from JSON string?
有一个简单的方法吗?
答案 0 :(得分:4)
/
是Windows上的有效目录分隔符,并且自MS-DOS 2开始以来。您甚至可以将它们混合在同一路径中,但这看起来很糟糕。
某些应用程序坚持\
,但您可能希望在为自己工作之前尝试使用/
。
在Windows上使用\
的一个重要原因是用户期望它。 \
已经在Windows文化中根深蒂固,当人们看到/
时会让人感到不安。
答案 1 :(得分:2)
您可以尝试另一种方式。
从json
文件中读取所需的路径变量。
您可以将路径变量字符串/
替换为\\
。希望它能运作
# Assuming path variable string as "path"
windows_path = path.replace("/","\\")