В принятом ответе уже упоминается PEP 238 . Я просто хочу добавить быстрый взгляд за кулисы для тех, кто интересуется тем, что происходит, не читая весь PEP.
Python отображает такие операторы, как +
, -
, *
и /
к специальным функциям, например, a + b
эквивалентен
a.__add__(b)
Что касается деления в Python 2, по умолчанию используется только /
, который отображается на __div__
, и результат зависит от типов ввода (например, int
, float
).
В Python 2.2 была введена функция __future__
division
, которая изменила семантику деления следующим образом (TL; DR из PEP 238):
/
отображается на __truediv__
, который должен «возвращать разумную аппроксимацию математического результата деления» (цитата из PEP 238) //
отображается на __floordiv__
, которая должна возвращаться польский результат /
С Python 3.0 изменения PEP 238 стали поведением по умолчанию, и в объектной модели Python не существует особого метода __div__
.
Если вы хотите использовать тот же код в Python 2 и Python 3, используйте
from __future__ import division
и придерживайтесь семантики PEP 238 /
и //
.
Если Вы будете использовать изображение в нескольких местах, то стоит загрузить данные изображения только однажды в память и затем совместно использовать его между всем Image
элементы.
, Чтобы сделать это, создайте BitmapSource
как ресурс где-нибудь:
<BitmapImage x:Key="MyImageSource" UriSource="../Media/Image.png" />
Затем в Вашем коде, используйте что-то как:
<Image Source="{StaticResource MyImageSource}" />
В моем случае, я нашел, что должен был установить Image.png
файл, чтобы иметь действие сборки Resource
, а не всего Content
. Это заставляет изображение нестись в рамках Вашего скомпилированного блока.
Если Вы используете , Смешение , чтобы сделать его дополнительным легкий и не испытать любые затруднения при получении корректного пути для Источник атрибут, просто перетаскивает изображение от панели Project на разработчика.
Да, это - правильный путь.
Вы могли использовать изображение в файле ресурсов просто с помощью пути:
<Image Source="..\Media\Image.png" />
необходимо установить действие сборки файла изображения к "Ресурсу".
Лучшей практикой использования изображений, видео и т.д. я считаю следующую:
<Image Source="/WPFApplication;component/Images/Start.png" />
Преимущества:
Полное описание того, как использовать ресурсы: Ресурсы приложения WPF, контент и файлы данных
И как ссылаться на них, читайте "Упаковать URI в WPF ".
Короче говоря, есть даже средства для ссылки на ресурсы из ссылочных / ссылающихся сборок.