通过以特定的键顺序和格式插入字典来写入()文件
write() file by inserting dict in specific key order and format
我需要创建一个文件,并在其中插入字典。
字典必须:
- 采用类似
pprint()
. 的格式
- 以特定方式订购密钥。
我知道我可以简单地使用 with open()
并使用一些定制功能按特定顺序插入所有内容...
with open('Dog.txt', 'w') as opened_file:
str_to_write = ''
for key, val in my_order_function(my_dct):
# Create the string with keys in order i need.
str_to_write += ....
opened_file.write(str_to_write)
但我想知道是否有一种方法可以使用一些已经存在的内置函数来实现排序和格式。
可能最接近循环和构建字符串的方法是使用 pprint.pformat
,例如:
>>> from pprint import pformat
>>> my_dct = dict(
k1=1,
k3=3,
k2=2,)
>>> print('my_dct = {{\n {}\n}}'.format(pformat(my_dct, width=1)[1:-1]))
my_dct = {
'k1': 1,
'k2': 2,
'k3': 3
}
我需要创建一个文件,并在其中插入字典。 字典必须:
- 采用类似
pprint()
. 的格式
- 以特定方式订购密钥。
我知道我可以简单地使用 with open()
并使用一些定制功能按特定顺序插入所有内容...
with open('Dog.txt', 'w') as opened_file:
str_to_write = ''
for key, val in my_order_function(my_dct):
# Create the string with keys in order i need.
str_to_write += ....
opened_file.write(str_to_write)
但我想知道是否有一种方法可以使用一些已经存在的内置函数来实现排序和格式。
可能最接近循环和构建字符串的方法是使用 pprint.pformat
,例如:
>>> from pprint import pformat
>>> my_dct = dict(
k1=1,
k3=3,
k2=2,)
>>> print('my_dct = {{\n {}\n}}'.format(pformat(my_dct, width=1)[1:-1]))
my_dct = {
'k1': 1,
'k2': 2,
'k3': 3
}