我在python中创建了一个非常长的字符串列表,并希望在不遇到文本包装问题的情况下将其写入JavaScript文件。
此外,如果可以在python中自动执行,我希望将一个变量赋给这个列表。这应该由python来完成,但是变量应该存在于.js文件中。即添加代码,而不是字符串。
我所拥有的:
lList_x = []
list_name = open('path/to/list.js', 'w+')
#list creation...
lList_x.append(stuff)
simplejson.dump(lList_x, list_name)
list_name.close()这将在list.js ["a","b","c","d",....]中创建列表。
这里的问题是,我正在创建的列表长在10 000到500 000字符之间,因此列表在每1024个字符之后被分割,这会破坏列表。这也在许多文本编辑器中呈现文件list.js只读。
因此,如何创建此列表,但将每个元素添加到新行?
在创建列表期间,我还希望在python中将一个变量自动分配给列表。这个是可能的吗?
所以我想要的是我的js文件:
window.lX = ["a",
"b",
"c",
...]这能办到吗?
发布于 2014-05-18 11:38:14
按照文献资料,您可以设置indent=""使dump在不缩进的情况下跨越多行“漂亮打印”:
simplejson.dump(lList_x, list_name, indent="")从医生那里:
如果
indent是一个字符串,那么JSON数组元素和对象成员将被很好地打印出来,后面是换行符,然后是针对每个嵌套级别重复的字符串。
发布于 2014-05-18 11:40:31
手动构造列表如何:
list_name.write("window.lX = [\n")
for item in lList_x:
print list_name.write(json.dumps(item), ",\n")https://stackoverflow.com/questions/23721437
复制相似问题