Найти - Пользователи
Полная версия: прошу помощи в работе с матрицей элементов с пользовательским типом данных.
Начало » Python для новичков » прошу помощи в работе с матрицей элементов с пользовательским типом данных.
1
DelayLama
Доброго времени суток.
Это мой первый проект на питоне, столкнулся с проблемой. При записи данных а матрицу и контрольном считывании из нее, записанные и считываемые данные не совпадают. Прикрепленный файл- не проект целиком, а пример, иллюстрирующий проблему. Очевидно, есть какая то тонкость, которую я пока не понимаю. Может кто нить сталкивался с подобным и знает решение проблемы?
Версия питона 3.13.2
py.user.next
from dataclasses import dataclass,field
@dataclass
class TestData: #пользовательский тип данных
feld_00: str=""
feld_01: int=0

data=TestData() # создание переменной пользовательского типа

nof_zeilen: int =4 #число строк
nof_spalten:int =3 #число столбцов

A=[[TestData() for _ in range(nof_spalten)] for _ in range(nof_zeilen)] # создание матрицы
# заполнение матрицы тестовыми данными
for i in range(0,nof_zeilen):
for j in range(0,nof_spalten):
data = A[i][j]
# запись данных в матрицу через переменную соответствующего типа
data.feld_00="Zeile:"+ str(i)+" Spalte:"+str(j) # Генерация и запись тестовых данных
#A[i][j]=data
print("Запись:", data.feld_00) # контрольный вывод записываемых данных

# контрольное считывание данных
for i in range(0,nof_zeilen):
for j in range(0,nof_spalten):
data=A[i][j]
print("Lesen:", data.feld_00) # Записанные ранее данные не соответствуют считанным!!

[guest@localhost py]$ python matrix_001.py 
Запись: Zeile:0 Spalte:0
Запись: Zeile:0 Spalte:1
Запись: Zeile:0 Spalte:2
Запись: Zeile:1 Spalte:0
Запись: Zeile:1 Spalte:1
Запись: Zeile:1 Spalte:2
Запись: Zeile:2 Spalte:0
Запись: Zeile:2 Spalte:1
Запись: Zeile:2 Spalte:2
Запись: Zeile:3 Spalte:0
Запись: Zeile:3 Spalte:1
Запись: Zeile:3 Spalte:2
Lesen: Zeile:0 Spalte:0
Lesen: Zeile:0 Spalte:1
Lesen: Zeile:0 Spalte:2
Lesen: Zeile:1 Spalte:0
Lesen: Zeile:1 Spalte:1
Lesen: Zeile:1 Spalte:2
Lesen: Zeile:2 Spalte:0
Lesen: Zeile:2 Spalte:1
Lesen: Zeile:2 Spalte:2
Lesen: Zeile:3 Spalte:0
Lesen: Zeile:3 Spalte:1
Lesen: Zeile:3 Spalte:2
[guest@localhost py]$
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB