我有一個從資料庫中檢索的串列,它有兩個值:
list = [('[email protected]', '[email protected]\n', '{ "header1": "Subject", "header2": "Text"}', ' { "condition1": "Equal", "condition2": "Contain"}', '{ "parameter1": "hi1", "parameter2": "hi2" || "testNested"}', '{ "subjectP1": "WorkedDynamicWord","wordP1": "hi1","subjectP2": "WorkedDynamicWord2", "wordP2": "Dynamic word"}'), ('[email protected]', '[email protected]\n', '{ "header1": "Subject"}', '{ "condition1": "Contain"}', '{ "parameter1": "haha"}', None)]
如您所見,兩個不同的值用逗號區分),。那么我怎樣才能分離這兩個值并為每個串列值插入一個變數呢?
例如(預期輸出):
variableA = ('[email protected]', '[email protected]\n', '{ "header1": "Subject", "header2": "Text"}', ' { "condition1": "Equal", "condition2": "Contain"}', '{ "parameter1": "hi1", "parameter2": "hi2" || "testNested"}', '{ "subjectP1": "WorkedDynamicWord","wordP1": "hi1","subjectP2": "WorkedDynamicWord2", "wordP2": "Dynamic word"}')
variableB = ('[email protected]', '[email protected]\n', '{ "header1": "Subject"}', '{ "condition1": "Contain"}', '{ "parameter1": "haha"}', None)
如果資料庫有第三個值,該變數將被動態添加。例如,variableC 將存盤第三個值,如果有第四個值,將生成 variableD。
uj5u.com熱心網友回復:
您可以這樣創建變數
data = [('[email protected]', '[email protected]\n', '{ "header1": "Subject", "header2": "Text"}', ' { "condition1": "Equal", "condition2": "Contain"}', '{ "parameter1": "hi1", "parameter2": "hi2" || "testNested"}', '{ "subjectP1": "WorkedDynamicWord","wordP1": "hi1","subjectP2": "WorkedDynamicWord2", "wordP2": "Dynamic word"}'), ('[email protected]', '[email protected]\n', '{ "header1": "Subject"}', '{ "condition1": "Contain"}', '{ "parameter1": "haha"}', None)]
for i,l in enumerate(data):
vars()[f'variable{i 1}'] = l
print(variable1, variable2)
uj5u.com熱心網友回復:
Python 的 globals() 函式回傳一個包含當前全域符號表的字典,因此您可以使用自定義名稱添加變數:
data = [('[email protected]', '[email protected]\n', '{ "header1": "Subject", "header2": "Text"}', ' { "condition1": "Equal", "condition2": "Contain"}', '{ "parameter1": "hi1", "parameter2": "hi2" || "testNested"}', '{ "subjectP1": "WorkedDynamicWord","wordP1": "hi1","subjectP2": "WorkedDynamicWord2", "wordP2": "Dynamic word"}'), ('[email protected]', '[email protected]\n', '{ "header1": "Subject"}', '{ "condition1": "Contain"}', '{ "parameter1": "haha"}', None)]
for iVariable, variable in enumerate(data):
globals()["variable" str(iVariable 1)] = variable
print("Variable 1 : ", variable1)
print("Variable 2 : ",variable2)
輸出是:
Variable 1 : ('[email protected]', '[email protected]\n', '{ "header1": "Subject", "header2": "Text"}', ' { "condition1": "Equal", "condition2": "Contain"}', '{ "parameter1": "hi1", "parameter2": "hi2" || "testNested"}', '{ "subjectP1": "WorkedDynamicWord","wordP1": "hi1","subjectP2": "WorkedDynamicWord2", "wordP2": "Dynamic word"}')
Variable 2 : ('[email protected]', '[email protected]\n', '{ "header1": "Subject"}', '{ "condition1": "Contain"}', '{ "parameter1": "haha"}', None)
如果您更喜歡使用字母(變數A、變數B、...),替換str(iVariable 1)為chr(ord('@') iVariable 1)將數字轉換為相應的字母字符。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/439261.html
