различие между переменными внутри и снаружи __ init __ ()

При определении условного форматирования вы не ограничены указанием условий в одной и той же ячейке при условии, что формула указана в качестве условия. Если в вашем случае, давайте предположим, что у вас есть некоторые названия фруктов в диапазоне B2: B10, и некоторая другая информация о нем, которую вы хотите закрасить красным, если фрукт является яблоком, как:

desired result

Для этого вам нужно выбрать диапазон, для которого вы хотите форматирование, здесь A2: A10, выберите формат и укажите формулу в зависимости от содержимого диапазона B2: B10. Хитрость в том, что вам нужно убедиться, что диапазон B является относительным, так как формула должна давать разные результаты для каждой ячейки. Вы можете ссылаться на B2: B10 (или $ B2: $ B10, здесь это не будет иметь большого значения, поскольку у вас только один отформатированный столбец) или просто на B2; Excel проверит B2 на формат A2 и, поскольку B2 относится к A2, он с радостью перейдет к проверке B3 на формат A3. Таким образом, ваше состояние может быть просто =BE="Apple":

enter image description here

Для более элегантного подхода вы также можете задать имя для элементов: столбец B относительно текущей строки, что сделает формулу более читабельной. Для этого, скажем, вы выбираете ячейку A2 и определяете имя Fruit как $ B2 следующим образом:

enter image description here

Не только вы можете изменить ваша формула в условном форматировании выше как Fruit="Apple", вы также можете использовать ее и в других формулах - например, вы хотите, чтобы столбец C содержал логическое значение, которое верно для красных фруктов, вы можете использовать формулу =OR(Fruit="Strawberry";Fruit="cherry"). Определенное имя Fruit относительно текущей строки, но абсолютное в столбце B, его значение будет различным для каждой строки. :

enter image description here

173
задан ivanleoncz 13 June 2019 в 00:04
поделиться

2 ответа

Переменная, установленная вне __ init __ принадлежат к классу. Их разделяют все экземпляры.

Переменные, созданные внутри __ init __ (и всех других функций метода) и предваряются self. принадлежат экземпляру объекта.

Переменные, созданные внутри __ init __ (и всех других функций метода) и предваряются self. принадлежат экземпляру объекта.

Переменные, созданные внутри __ init __ (и всех других функций метода) и предваряются self. принадлежат экземпляру объекта.

215
ответ дан 23 November 2019 в 20:36
поделиться

классы похожи на проекты для создания объектов. Давайте сделаем метафору с созданием дома. У Вас есть проект дома, таким образом, можно создать дом. Можно создать столько зданий, сколько ресурсы позволяют.

В этой метафоре, проект является классом, и дом является инстанцированием класса, создавая объект.

здания имеют общие атрибуты как наличие крыши, гостиной, и т.д. Это - то, куда Вы метод init идете. Это создает объект (дом) с атрибутами, которые Вы хотите.

Позволяет, предполагают, что Вы имеете:

`class house:`
`roof = True`
`def __init__(self, collor):`
`self.wallcolor = collor`

>> create little goldlock's house:

>> goldlock = house() #() invoke's class house, not function

>> goldlock.roof

>> True

all house's have roofs, now let's define goldlock's wall collor to white:

>> goldlock.wallcolor = 'white'
>>goldlock.wallcolor
>> 'white'
0
ответ дан 23 November 2019 в 20:36
поделиться
Другие вопросы по тегам:

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