Змест[Схаваць][Паказаць]
Гэтая лекцыя прысвечана яшчэ адной істотнай структуры ў Python, якая называецца картэж.
Корцікі
Картэжы падобныя на спісы, таму мы можам выкарыстоўваць іх для захоўвання спісу элементаў. Але ў адрозненне ад спісаў, мы не можам змяняць іх, дадаваць новыя элементы або выдаляць існуючыя элементы. Можна сказаць, што картэжы нязменныя.
Дазвольце мне паказаць вам. Картэжы пазначаюцца ў дужках замест квадратных дужак у спісах.
numbers = (4, 1, 7, 5, 0, 9)
Цяпер, калі мы выцягнем спіс метадаў для картэжаў, вы ўбачыце, што ў нас няма метадаў дадання або ўстаўкі, таму новыя элементы не могуць быць дададзены ў гэты картэж. У нас ёсць толькі два метады: падлік і індэкс.
Мы выкарыстоўваем «count», каб падлічыць колькасць уваходжанняў элемента. «Індэкс» выкарыстоўваецца, каб знайсці індэкс першага ўваходжання элемента. Такім чынам, мы можам атрымаць толькі інфармацыю аб картэжы, і мы не можам змяніць яго. Дарэчы, гэтыя іншыя метады, якія вы бачыце тут, пачынаюцца з двух падкрэсліванняў.
Мы называем іх магічнымі метадамі. Гэта больш складаная тэма, і мы закранем іх у нашай наступнай серыі.
Акрамя таго, што картэжы нязменныя, яны маюць большасць характарыстык спісу.
Практычна кажучы, большую частку часу вы будзеце выкарыстоўваць спісы, але картэжы таксама карысныя. Калі вы хочаце стварыць спіс элементаў і пераканацца, што нідзе ў вашай праграме вы выпадкова не змянілі гэты спіс, то лепш выкарыстоўваць картэж.
Распакоўка
У гэтым раздзеле я збіраюся паказаць вам магутную функцыю распакавання, якую мы маем у Python.
Давайце вызначым "каардынату" картэжа
coordinate = (1, 2, 3)
Цяпер уявіце, што гэта каардынаты для «x», «y» і «z». Дапусцім, мы хочам атрымаць гэтыя значэнні і выкарыстоўваць іх у некалькіх складаных выразах у нашай праграме. Магчыма, мы хочам уключыць іх у склад вялікай комплекснай формулы.
Такім чынам, мы разам павінны напісаць наступны код:
coordinate[0] * coordinate[1] * coordinate[2]
Гэты радок кода памножыць усе каардынаты, але пісаць наш код так неэфектыўна. Па-першае, давайце выкарыстаем лепшы падыход і захаваем гэтыя каардынаты ў асобных зменных.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Гэта лепш. праўда? Так што пакуль нічога новага. Зараз дазвольце мне паказаць вам магутную функцыю пад назвай распакаванне, дзякуючы якой мы можам дасягнуць таго ж выніку з значна меншым кодам.
x, y, z, = coordinate
Цяпер гэты адзіны радок кода ў дакладнасці эквівалентны тром радкам кода, напісаным вышэй. Дазвольце мне растлумачыць вам, як гэта працуе.
Калі інтэрпрэтатар Python бачыць гэты аператар, ён атрымае першы элемент у гэтым картэжы і прызначыць яго зменнай. Падобным чынам другі і трэці элементы будуць прысвоены зменным. Робячы гэта, мы распакоўваем гэты картэж на 3 зменныя. Давайце праверым наш выхад.
Распакаванне таксама можна зрабіць са спісамі.
Слоўнікі
Мы збіраемся даведацца пра слоўнікі ў Python. Мы выкарыстоўваем слоўнікі ў сітуацыях, калі мы хочам захоўваць інфармацыю, якая прыходзіць у выглядзе пар ключ-значэнне.
Вось прыклад. Падумайце пра кліента з мноствам атрыбутаў, такіх як імя, адрас электроннай пошты, нумар тэлефона, адрас і гэтак далей. Цяпер кожны з гэтых атрыбутаў мае значэнне. Напрыклад:
name = Jay
email = [email protected]
У гэтым прыкладзе нашымі ключамі з'яўляюцца імя, адрас электроннай пошты і тэлефон. Кожны ключ звязаны са значэннем, таму тут мы выкарыстоўваем слоўнік. З дапамогай слоўніка мы можам захоўваць кучу пар ключ-значэнне. Дазвольце мне паказаць вам, як вызначыць слоўнік у Python.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Ключом могуць быць радкі, лічбы, лагічныя значэнні або што заўгодна. Ключы з'яўляюцца унікальнымі і могуць быць вызначаны толькі адзін раз, г.зн. я не магу вызначыць «узрост» яшчэ раз з дапамогай іншай лічбы. Яны таксама адчувальныя да рэгістра.
Цяпер, калі я друкую customer["name"],
ён будзе называць імя кліента. Давайце раздрукуем яго на тэрмінале:
Мы таксама можам выкарыстоўваць метады са слоўнікамі. Тая ж функцыя, прадэманстраваная вышэй, можа быць прайграна з дапамогай метаду «атрымаць».
Існуе адно асаблівае адрозненне паміж двума вышэйзгаданымі метадамі. Дазвольце мне прадэманстраваць гэта.
Вы бачыце, што калі мы проста надрукавалі неіснуючы ключ, гэта прывяло да памылкі. З іншага боку, выкарыстанне метаду для выкліку неіснуючага ключа прыводзіць да выніку «няма», што азначае адсутнасць значэння. Пры выкарыстанні метаду «атрымаць» мы таксама можам указаць значэнне па змаўчанні.
Напрыклад, калі гэты слоўнік не мае ключа «дата нараджэння», мы можам даць яго так:
customer.get("birthdate", "Jan 01, 1994")
Мы таксама можам абнавіць любы ключ у слоўніку, падобна спісу. Дапусцім, мы хочам абнавіць ключ імя ў нашым слоўніку. Вось як мы гэта зробім.
customer["name"] = "Shahbaz"
Падобны сінтаксіс можна выкарыстоўваць і для дадання новага ключа ў наш слоўнік. Давайце аналагічным чынам дадамо ключ «дата нараджэння».
customer["birthdate"] = "Jan 01, 1994"
Такім чынам, гэта асновы выкарыстання слоўнікаў у Python. Яны вельмі важныя і маюць шмат прымянення ў рэальным свеце.
Ажыццяўляць
Вы збіраецеся напісаць праграму, якая пераўтворыць лічбы ў словы, як гэта:
Рашэнне
Вось рашэнне для вас, хлопцы.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
Аналагічным чынам вы можаце ствараць іншыя цікавыя праграмы, такія як «канвэртар эмодзі». Атрымлівайце задавальненне, PYTHONERS!
Хутацца!
Спадзяюся, вам спадабалася гэтая лекцыя. Далей мы збіраемся паглыбіцца ў важны аспект праграмавання Python, функцыі і параметры.
Пакінуць каментар