Как распечатать список, dict или набор объектов, в Python

Найдено решение:

MainViewModel

public class MainViewModel : ViewModelBase
{
    public StudentViewModel StudentViewModel { get; set; }

    public MainViewModel()
    {
        StudentViewModel = new StudentViewModel();
    }
}

MainView

<ComboBox
DataContext="{Binding StudentViewModel}"
ItemsSource="{Binding Path=Students, UpdateSourceTrigger=PropertyChanged}"
/>

StudentViewModel [ 119]

private ObservableCollection<Student> _students;

public ObservableCollection<Student> Students
    {
        get => _students;
        set
            {
                if (_students == value) return;
                _students = value;
                RaisePropertyChanged("Students");
            }
        }
20
задан Dana the Sane 15 February 2012 в 15:25
поделиться

2 ответа

Да, вам нужно использовать __ repr __ . Быстрый пример его поведения:

>>> class Foo:
...     def __str__(self):
...             return '__str__'
...     def __repr__(self):
...             return '__repr__'
...
>>> bar = Foo()
>>> bar 
__repr__
>>> print bar 
__str__
>>> repr(bar)
'__repr__'
>>> str(bar)
'__str__'

Однако, если вы не определите __ str __ , он вернется к __ repr __ , хотя это не рекомендуется:

>>> class Foo:
...     def __repr__(self):
...             return '__repr__'
...
>>> bar = Foo()
>>> bar
__repr__
>>> print bar
__repr__

Все все рассмотрено, как рекомендует руководство, __ repr __ используется для отладки и должен возвращать что-то repr , представляющее объект.

23
ответ дан 30 November 2019 в 00:59
поделиться

Just a little enhancement avoiding the + for concatenating:

def __str__(self):
  return '[%s] -> [%s]' % (self.sid, self.seq)
1
ответ дан 30 November 2019 в 00:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: