Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае: < /p>
model = [
["h", "P12", "P13"],
["P12", "P23", "eL"],
["P13", "P23", "eR"]
]
В словах:
Фиксированные элементы "H" , "el" и «er» должны появляться в разных сублистах. "P23" - произвольные элементы в зависимости от данного списка для проверки.
Порядок элементов не имеет значения
test_list_4 = [
["h", "P1", "eL"],
["P1", "P3", "P2"], # there is no list containing "eL"
["P2", "P3", "eR"]
]
> False
< /code>
Я пробовал с Chatgpt, но следующий код не работает должным образом, и до сих пор я не могу заставить его работать: < /p>
from collections import defaultdict
# Step 1: Identify where fixed elements appear in the model
for i, sublist in enumerate(model):
for item in sublist:
if item in fixed_elements:
model_fixed_positions[item] = i
# Step 2: Identify where fixed elements appear in the test list
test_fixed_positions = {}
for i, sublist in enumerate(test_list):
for item in sublist:
if item in fixed_elements:
if item in test_fixed_positions:
return False # Each fixed element must be in a distinct sublist
test_fixed_positions[item] = i
# Step 3: Ensure fixed elements are in corresponding positions
if set(model_fixed_positions.keys()) != set(test_fixed_positions.keys()):
return False # Missing or extra fixed elements
for key in model_fixed_positions:
if model_fixed_positions[key] != test_fixed_positions[key]:
return False # Fixed elements must appear in the same indexed sublists
# Step 4: Establish and validate placeholder mapping
for i, (model_sublist, test_sublist) in enumerate(zip(model, test_list)):
model_placeholders = [x for x in model_sublist if x not in fixed_elements]
test_placeholders = [x for x in test_sublist if x not in fixed_elements]
if len(model_placeholders) != len(test_placeholders):
return False # Different number of elements
for m_item, t_item in zip(model_placeholders, test_placeholders):
if m_item in placeholder_mapping:
if placeholder_mapping[m_item] != t_item:
return False # Inconsistent placeholder mapping
else:
placeholder_mapping[m_item] = t_item
return True # Structure matches
# Example usage:
print(validate_structure(model, test_list_2)) # Expected: True, but returns False
Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае: < /p> model = [ ["h", "P12", "P13"], ["P12", "P23", "eL"], ["P13", "P23", "eR"] ]
В словах: [list] [*] Фиксированные элементы "H" , "el" и «er» должны появляться в разных сублистах. "P23" - произвольные элементы в зависимости от данного списка для проверки. Порядок элементов не имеет значения [*] Повторение элементов "H" test_list_1 = [ ["h", "a2", "a3"], ["a2", "a4", "eL"], ["a3", "a4", "eR"] ]
test_list_4 = [ ["h", "P1", "eL"], ["P1", "P3", "P2"], # ❌ there is no list containing "eL" ["P2", "P3", "eR"] ]
> False < /code> Я пробовал с Chatgpt, но следующий код не работает должным образом, и до сих пор я не могу заставить его работать: < /p> from collections import defaultdict
# Step 1: Identify where fixed elements appear in the model for i, sublist in enumerate(model): for item in sublist: if item in fixed_elements: model_fixed_positions[item] = i
# Step 2: Identify where fixed elements appear in the test list test_fixed_positions = {} for i, sublist in enumerate(test_list): for item in sublist: if item in fixed_elements: if item in test_fixed_positions: return False # Each fixed element must be in a distinct sublist test_fixed_positions[item] = i
# Step 3: Ensure fixed elements are in corresponding positions if set(model_fixed_positions.keys()) != set(test_fixed_positions.keys()): return False # Missing or extra fixed elements
for key in model_fixed_positions: if model_fixed_positions[key] != test_fixed_positions[key]: return False # Fixed elements must appear in the same indexed sublists
# Step 4: Establish and validate placeholder mapping for i, (model_sublist, test_sublist) in enumerate(zip(model, test_list)): model_placeholders = [x for x in model_sublist if x not in fixed_elements] test_placeholders = [x for x in test_sublist if x not in fixed_elements]
if len(model_placeholders) != len(test_placeholders): return False # Different number of elements
for m_item, t_item in zip(model_placeholders, test_placeholders): if m_item in placeholder_mapping: if placeholder_mapping[m_item] != t_item: return False # Inconsistent placeholder mapping else: placeholder_mapping[m_item] = t_item
return True # Structure matches
# Example usage: print(validate_structure(model, test_list_2)) # Expected: True, but returns False
Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае:
model = [
,
,
Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае:
model = [
,
,
Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае:
model = [
,
,
Я пытаюсь написать функцию Python, чтобы подтвердить, следует ли данное список той же структуры, что и предопределенный список «модели», который в моем конкретном случае:
model = [
,
,
C# 10 позволяет объявлять конструктор без параметров и инициализаторы полей для структуры. Вот что происходит, когда вы объявляете инициализаторы полей, но не объявляете явный конструктор без параметров, согласно справочнику по языку: