![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Імена змінних і ключові словаСодержание книги Похожие статьи вашей тематики
Поиск на нашем сайте
Для перетворення абстрактної, не проявленої в матеріальному світі ідеї в код програми необхідно виділити сутність і дії, придумати їм назви, щоб ними управляти, прослідкувати зв'язки між ними та їх властивостями. Ви, напевно, здогадалися, що іменами сутностей, з якими працює програміст, служать змінні. Тому варто вибирати осмислені назви змінних. Імена змінних можуть бути довільної довжини, але прагніть вибирати не дуже короткі і не дуже довгі імена – від цього залежить читабельність програми. При визначенні імен змінних в Python можна використовувати будь-які латинські букви, цифри і знак _ (знак підкреслення). Знак підкреслення може використовуватися для розділення слів складових ім'я змінної: наприклад, user_name або full_price. Але назви змінних не можуть починатися з цифри. >>> 1message = "Hello world!" File "<stdin>", line 1 1message = "Hello world!" ^ SyntaxError: invalid syntax
>>> price_in_$ = 300 File "<stdin>", line 1 price_in_$ = 300 ^ SyntaxError: invalid syntax
>>> class = "Computer Science 101" File "<stdin>", line 1 class = "Computer Science 101" ^ SyntaxError: invalid syntax Розберемо ці три приклади. Перший вираз інтерпретатору не сподобався, і він відзначив знаком ^, де саме у нього виникли претензії: він вказав на найменування змінної 1message. Дійсно, ім'я 1message є некоректним, адже воно починається з цифри. Аналогічна ситуація з іменем price_in_$: воно містить неприпустимий символ $. Але що інтерпретатору не подобається в третьому виразі? Давайте спробуємо змінити ім'я змінної class на що-небудь схоже, наприклад, class_: >>> class_ = "Computer Science 101" >>> print class_ Computer Science 101 Тепер все гаразд. У чому ж справа? Чому ім'я class викликало помилку, а ім'я class_ – ні? Які є припущення? Поставимо ще один експеримент: >>> print = "Some message" File "<stdin>", line 1 print = "Some message" ^ SyntaxError: invalid syntax Знайома ситуація, чи не так? Проаналізуємо те, що ми отримали. Як ім'я змінної ми намагалися використовувати команду print і отримали аналогічну помилку, тому слово class, швидше за все, теж є командою або якимсь службовим словом. Дійсно, слова class і print є так званими ключовими словами. Всього в Python зарезервовано 29 ключових слів:
Слід пам’ятати, що інтерпретатор розрізняє великі і маленькі букви, тобто message і Message будуть різними змінними.
· Вправа. Напишіть програму, яка підтверджує, що інтерпретатор Python розрізняє рядкові і заголовні букви в іменах змінних. Вирази Вираз – це послідовність синтаксичних одиниць, що описує елементарну дію мовою програмування. Наприклад, print "Hello world!" і message = n є виразами. Коли ви набираєте вираз в командному рядку, інтерпретатор виконує його і виводить результат, якщо він існує. Результатом виразу print "Hello world!" є рядок: Hello world!. Вираз привласнення нічого не виводить. Виконання виразів По суті, вираз – це послідовність значень, змінних і операторів. Якщо ви напишете вираз, то інтерпретатор, після виконання, виведе його на екран: >>> 1 + 1 Значення само по собі розглядається як вираз, так само як і змінна: >>> 17 >>> x = 2 >>> x Але виконання і виведення результату виконання виразу не зовсім те ж саме: >>> message = "Hello world!" >>> message "Hello world!" >>> print message Hello world! Коли Python виводить значення виразу в командному режимі, він використовує той же формат, що використовується при введенні цього значення. Наприклад, при виведенні рядків він бере їх в лапки. Команда print також виводить значення виразу, але у випадку з рядками, вона виводить вміст рядка без лапок. У командному режимі інтерпретатор Python зберігає результат останнього виразу в спеціальній змінній _ (знак підкреслення). Ви можете переглянути результат виконання останнього виразу і використовувати його в своїх виразах: >>> 1.25 + 1 2.25 >>> print _ 2.25 >>> 5 + _ 7.25 Оператори і операнди Операторами називають спеціальні символи (або послідовності символів) що позначають певні операції. Наприклад, знаком «+» позначають операцію додавання, а знаком «*» – множення. Значення, над якими виконується операція, називають операндами. Всі нижченаведені вирази, з погляду Python є коректними: 20+32 hour-1 hour*60+minute minute/60 5**2 (5+9)*(15-7) Значення більшості з них неважко зрозуміти. Значення символів +, - * і / у Python такі ж, як в математиці. Дужки використовуються для групування операцій, а двома зірочками (**) позначається операція піднесення до степеня.
Якщо операндом є змінна, то перед обчисленням виразу проводиться підстановка на її місце значення, на яке вказує ця змінна. Додавання, віднімання, множення і піднесення до степеня працюють в звичний для нас спосіб, але дія операції ділення дещо відрізняється. Це ілюструє наступний приклад: >>> minute = 59 >>> minute/60 Значення змінної minute рівне 59; результат ділення 59 на 60 повинен бути 0.98333, а не 0. Причиною цієї невідповідності є те, що Python виконує цілочисельне ділення. Коли обидва операнди – цілі числа, і Python вважає, що результат теж повинен бути цілим. Тому цілочисельне ділення завжди відкидає дробову частину. Як отримати дробовий результат? Достатньо примусово перетворити один з операндів в дробове число: >>> minute = 59 >>> float(minute)/ 60 0.983333333333 Інший варіант: >>> minute = 59 >>> minute / 60.0 0.983333333333 Якщо один з операндів належить до типу float, то другий автоматично перетворюється до цього типу, як до складнішого. Порядок операцій Більшість мов програмування дозволяють групувати в одному виразі кілька операцій. Це зручно, наприклад, якщо потрібно порахувати процентне співвідношення двох величин: >>> print 100 * 20 / 80, "%" 25 % В даному прикладі обчислюється процентне співвідношення двох чисел: 20 і 80. Після результату виразу виводиться символ % – інтерпретатор обчислює арифметичне вираз і виводить результат, а потім дописує рядок, що стоїть після коми. Коли у виразі є більш ніж один оператор, послідовність виконання операцій залежить від порядку їх проходження у виразі, а також від їх пріоритету. Пріоритети операторів в Python повністю співпадають з пріоритетами математичних операцій. Найвищий пріоритет у дужок, які дозволяють змінювати послідовність виконання операцій. Таким чином, операції в дужках виконуються в першу чергу. Наприклад, 2*(3-1) рівне 4 (1+1)**(5-2) – 8. Дужки зручно використовувати і для того, щоб вирази було легко читати, навіть якщо їх наявність у виразі ніяк не відбивається на результаті: (100*20)/80. Наступний пріоритет у операції піднесення до ступеня, тому 2**1+1 рівне 3, а не 4, і вираз 3*1**3 дасть результат 3, а не 27. Множення і ділення мають однаковий пріоритет, вищий, ніж в операцій додавання і віднімання. 2*3-1 дорівнює 5, а не 4; 2/3-1 дорівнює -1, а не 1 (результат цілочисельного ділення 2/3=0). Оператори з однаковим пріоритетом виконуються зліва направо. Отже в виразі 100*20/80 множення виконується першим (виразу набуває вигляд 2000/80); потім виконується ділення, значення, що видає в результаті, 25. Якби операції виконувалися справа наліво, то результат вийшов би іншим. · Вправа. Змініть вираз 100*20/80 так, щоб послідовність виконання операцій була зворотною. Який результат ви отримали після його виконання і чому?
Рядки Перейдемо до докладнішого вивчення типів даних, адже для ефективнішого управління даними корисно розуміти, як вони влаштовані. Почнемо з одного з вже знайомих нам типів – рядок (str). Прості операції над рядками Взагалі кажучи, над рядками не можна проводити ті ж операції, що і над числами, тому наступні приклади працювати не будуть: message-1 "Hello"/123 "Hello"*"world!" "15"+2 Але оператор «+» працює з рядками, хоча означає іншу операцію: конкатенацію або зчеплення рядків. >>> str1 = "Hello" >>> str2 = " world" >>> print str1 + str2 + "!" Hello world! Зверніть увагу, що другий рядок починається з пропуску. Пропуск такий же символ як і будь-який інший.
Оператор * теж можна використовувати по відношенню до рядків, але за умови, що одним з операндів буде ціле число. В цьому випадку оператор * символізує операцію повторення рядка (або ітерацію). Наприклад, 'Fun'*3 видасть результат 'FunFunFun'. Можна прослідкувати аналогію між операціями над числами і операціями над рядками: так само, як 4*3 еквівалентно 4+4+4, 'Fun'*3 еквівалентно 'Fun'+'Fun'+'Fun'. Але з іншого боку, конкатенація і повторення мають кілька істотних відмінностей від додавання і множення. · Вправа. Який результат буде отримано після виконання виразу "hello"+" world"*3? Які висновки можна зробити на основі цього результату? Оператор індексування Ми вже навчилися виконувати деякі операції над рядками, але до цього моменту ми працювали з рядками як з єдиним цілим. Відомі нам операції над рядками (конкатенація і ітерація) є, по суті аналогами додавання і множення чисел, але цей набір неповний – не вистачає аналогів операцій віднімання і ділення. В програмуванні існує цілий набір спеціальних операцій і функцій, символів, що дозволяють працювати з наборами, які складають рядок – підрядок. Простий з них – оператор індексування. Даний оператор дозволяє отримати будь-який одиночний символ з рядка. У нього досить простий синтаксис: РЯДОК[ІНДЕКС] Індекс, що вказується в квадратних дужках, є порядковим номером символу в рядку: >>> 'Hello!'[1] 'e' Інтерпретатор чомусь повернув не перший, а другий символ рядка. Пояснюється ця семантична помилка дуже просто. Річ у тому, що комп'ютер починає відлік не з одиниці, а з нуля. Перевіримо: >>> 'Hello!'[0] 'H'
|
|||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-04-07; просмотров: 488; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.116.50.186 (0.011 с.) |