私はこのコードを使用して、辞書の項目をdoc
変数に格納します。 このコードは正常に動作しますが、if文のために最初の要素が失われます。私はドキュメントを印刷するときIf文の辞書の1つの要素がありません
def convert(old):
time_key = 'Time '
# Save the time
time_item = (time_key, old[time_key])
# Add remove it
del old[time_key]
# Copy remaining items to new dicts and save them in a list
return [dict([time_item, item]) for item in old.items()]
row = {
'Time ': '2017-12-01T13:54:04',
'Energy [kWh]': '0.01',
'Voltage [V]': '221.64',
'Current [A]': '0.08',
}
new_data = convert(row)
#print(new_data)
Zeitvalue= ""
Device=""
Value=""
for d in new_data:
#print(d)
for key, value in d.items():
if key == 'Time ':
Zeitvalue = value
#print(value)
continue
else:
Device = key
Value = value
doc = {'Time ':Zeitvalue,'Device':Device, 'Measure':Value}
print("This is doc variable:",doc) # doc vaiable with missed time element
は、だから私はこの 出力を得た:
doc: {'Device': 'Voltage [V]', 'Measure': '221.64', 'Time ': ''} # **ISSUE: variable time is missed here, How to fix it ?**
doc: {'Device': 'Current [A]', 'Measure': '0.08', 'Time ': '2017-12-01T13:54:04'}
doc: {'Device': 'Energy [kWh]', 'Measure': '0.01', 'Time ': '2017-12-01T13:54:04'}
出力を担当する印刷ラインのコメントを外してください。 –
"continue"ステートメントのために可能です – caot
'ifkey == 'Time'条件から' continue'を削除します。注意しておきますが、他のすべてのエントリには継承された 'Zeitvalue'があるので、' Time'が各エントリのセットに対して発生しない場合、次のセットは前のセットの時間を持ちます。 – zwer