【发布时间】:2020-10-02 16:29:06
【问题描述】:
我的 Python 脚本正在运行并附加到我的 JSON 文件中;但是,我尝试添加编号条目标识,但没有成功。此外,每次迭代计算时,我都试图获得特定的输出。寻找详细的示例和指导。
当前 Python 脚本
import json
# Dictionary All-Calculations
def dict_calc(num1, num2):
add = str(float(num1)+float(num2))
sub = str(float(num1)-float(num2))
mul = str(float(num1)*float(num2))
div = str(float(num1)/float(num2))
calc_d = {"Add" : add, "Subtract" : sub, "Multiply" : mul, "Divide" : div}
return calc_d
# Yes or No
def y_n(answer):
if answer[:1] == 'y':
return True
if answer[:1] == 'n':
return False
# Main Dictionary
data_table = {}
while True:
num1 = input("\n Enter first number: ")
num2 = input("\n Enter second number: ")
data_table = dict_calc(num1, num2)
with open('dict_calc.json', 'a', encoding='utf-8') as f:
json.dump(data_table, f, ensure_ascii=True, indent=4)
answer = input("\n Run Again? (Y/N) ").lower().strip()
if y_n(answer) == True:
continue
else:
print("\n Thank You and Goodbye")
break
电流输出示例
{
"Add": "579.0",
"Subtract": "-333.0",
"Multiply": "56088.0",
"Divide": "0.26973684210526316"
}{
"Add": "1245.0",
"Subtract": "-333.0",
"Multiply": "359784.0",
"Divide": "0.5779467680608364"
}{
"Add": "1396.0",
"Subtract": "554.0",
"Multiply": "410475.0",
"Divide": "2.315914489311164"
}
所需的输出示例 - 我正在尝试添加条目加号,每次迭代后都会增加。此外,我也在尝试模拟同样的输出。
[
{
"Entry": "1",
"Add": "579.0",
"Subtract": "-333.0",
"Multiply": "56088.0",
"Divide": "0.26973684210526316"
},
{
"Entry": "2",
"Add": "1245.0",
"Subtract": "-333.0",
"Multiply": "359784.0",
"Divide": "0.5779467680608364"
},
{
"Entry": "3",
"Add": "1396.0",
"Subtract": "554.0",
"Multiply": "410475.0",
"Divide": "2.315914489311164"
}
]
【问题讨论】:
-
嗨@JGio,欢迎来到SO。我对 python 的了解不多,但如果我理解我认为你想创建对象数组。试试这个例子: import json # some JSON: x = '{ "name":"John", "age":30, "city":"New York"}' # parse x: y = [json.loads(x )] # 结果是一个 Python 字典: print(y)
标签: json python-3.x dictionary