Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Замечание для опытных программистов




Замечание для опытных программистов

Нет отдельного типа ‘long int’ (длинное целое). Целые числа по умолчанию могут быть

произвольной длины.

 

 

7.4 Строки

 

Строка – это последовательность символов. Чаще всего строки – это просто некоторые наборы слов.

Слова могут быть как на английском языке, так и на любом другом, поддерживаемом

стандартом Unicode, что означает почти на любом языке мира.

 

Замечание для опытных программистов

В Python 3 нет ASCII-строк, потому что Unicode является надмножеством (включает в

себя) ASCII. Если необходимо получить строку строго в кодировке ASCII, используйте

str.encode("ascii"). Подробнее смотрите в обсуждении этого вопроса на StackOverflow.

По умолчанию все строки в Unicode.

 

Я могу с уверенностью сказать, что вы будете использовать строки почти в каждой ва-

шей программе на Python. Поэтому уделите внимание тому, как работать со строками в

Python.

 

1 “literal” – англ. «буквальный»; вспомните «литера» (син. «буква»). (прим. перев.)


 

 

7.4.1 Одинарные кавычки

 

Строку можно указать, используя одинарные кавычки, как например, 'Фраза в кавыч-

ках'. Все пробелы и знаки табуляции сохранятся, как есть.

 

7.4.2 Двойные кавычки

 

Строки в двойных кавычках работают точно так же, как и в одинарных. Например,

"What's your name?".

 

7.4.3 Тройные кавычки

 

Можно указывать «многострочные» строки с использованием тройных кавычек (""" или

'''). В пределах тройных кавычек можно свободно использовать двойные или тройные

кавычки. Например:

 

'''Это многострочная строка. Это её первая строка.

Это её вторая строка.

"What's your name?", - спросил я.

Он ответил: "Bond, James Bond."

'''

 

 

7.4.4 Строки неизменяемы

 

Это означает, что после создания строки её больше нельзя изменять. На первый взгляд

это может показаться недостатком, но на самом деле это не так. В последствии на примере

разных программ мы увидим, почему это не является ограничением.

 

7.4.5 Объединение строковых констант

 

Если расположить рядом две строковых константы, Python автоматически их объеди-

нит. Например, 'What\'s ' 'your name?' автоматически преобразуется в "What's your

name?".

 

Замечание для программистов на C/C++

В Python нет отдельного типа данных char (символ). В нём нет нужды, и я уверен, что вы

не будете по нему скучать.

 

 

7.4.6 Метод format

 

Иногда бывает нужно составить строку на основе каких-либо данных. Вот здесь-то и при-

гождается метод format().

Сохраните следующие строки в файл str_format.py:

age = 26

name = 'Swaroop'

print ('Возраст {0} -- {1} лет.'.format(name, age))

print ('Почему {0} забавляется с этим Python?'.format(name))

 

Вывод:

 

$ python str_format.py

Возраст Swaroop -- 26 лет.

Почему Swaroop забавляется с этим Python?

 

Как это работает:

В строку могут быть включены определённые обозначения, а впоследствии может быть вызван метод format для замещения этих обозначений соответствующими аргументами.

Взгляните на первый случай применения обозначений, где мы пишем {0}, и это соответствует переменной name, являющейся первым аргументом метода format. Аналогично, второе обозначение {1} соответствует переменной age, являющейся вторым аргументом метода format. Заметьте, что Python начинает отсчёт с 0, поэтому первая позиция – номер 0, вторая – номер 1 и т.д.

Заметьте, мы ведь могли добиться того же самого результата и объединением строк: 'Возраст' + name + ' -- ' + str(age) + ' лет.', однако вы сами видите, как это некрасиво, и как легко в таком случае допустить ошибку. Во- вторых, преобразование в строку делается методом format автоматически, в отличие от явного преобразования в нашем примере. В-третьих, используя метод format, мы можем изменить сообщение, не затрагивая используемых переменных, и наоборот.

На всякий случай имейте в виду, что цифры здесь не обязательны. Можно было бы просто написать:

 

age = 26

name = 'Swaroop'

 

print ('Возраст {} -- {} лет.'.format(name, age))

print ('Почему {} забавляется с этим Python?'.format(name))

 

и получить такой же результат, как и ранее.

В методе format Python помещает значение каждого аргумента в обозначенное место. Могут быть и более детальные обозначения, как то:

 

>>> # десятичное число (.) с точностью в 3 знака для плавающих:

... '{0:.3}'.format(1/3)

'0.333'

>>> # заполнить подчёркиваниями (_) с центровкой текста (^) по ширине 11:

... '{0:_^11}'.format('hello')

'___hello___'

>>> # по ключевым словам:

... '{name} написал {book}'.format(name='Swaroop', book='A Byte of Python')

'Swaroop написал A Byte of Python'

 

Детально такие обозначения форматов описаны в Предложении по расширению Python

PEP 3101.

 

7.5 Переменные

 

Использование одних лишь литеральных констант может скоро наскучить – нам ведь

нужен способ хранения любой информации и манипулирования ею. Вот здесь на сце-

ну выходят переменные. Слово «переменные» говорит само за себя – их значение может

меняться, а значит, вы можете хранить в переменной всё, что угодно. Переменные – это

просто области памяти компьютера, в которых вы храните некоторую информацию. В

отличие от констант, к такой информации нужно каким-то образом получать доступ,

поэтому переменным даются имена.

 

7.6 Имена идентификаторов

 

Переменные – это частный случай идентификаторов. Идентификаторы – это имена, при- своенные чему-то для его обозначения. При выборе имён для идентификаторов необходимо соблюдать следующие правила:

• Первым символом идентификатора должна быть буква из алфавита (символ ASCII в верхнем или нижнем регистре, или символ Unicode), а также символ подчёркивания (“_”).

• Остальная часть идентификатора может состоять из букв (символы ASCII в верхнем или нижнем регистре, а также символы Unicode), знаков подчёркивания (“_”) или цифр (0-9).

• Имена идентификаторов чувствительны к регистру. Например, myname и myName – это не одно и то же. Обратите внимание на “n” в нижнем регистре в первом случае и “N” в верхнем во втором.

• Примеры допустимых имён идентификаторов: i, __my_name, name_23, a1b2_c3 и любые_символы_utf8_δξѪђёўЩӆΞέά.

• Примеры недопустимых имён идентификаторов: 2things, здесь есть пробелы, my-name, >a1b2_c3 и "идентификатор_в_кавычках".

 

7.7 Типы данных

 

Переменные могут хранить значения разных типов, называемых типами данных. Основными типами являются числа и строки, о которых мы уже говорили. В дальнейших главах мы увидим, как создавать свои собственные типы при помощи классов.

 

7.8 Объекты

Помните, Python рассматривает всё, что есть в программе, как объекты. Имеется в виду, в самом общем смысле. Вместо того, чтобы говорить “нечто”, мы говорим “объект”.

 





Поделиться с друзьями:


Дата добавления: 2017-03-11; Мы поможем в написании ваших работ!; просмотров: 320 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Если вы думаете, что на что-то способны, вы правы; если думаете, что у вас ничего не получится - вы тоже правы. © Генри Форд
==> читать все изречения...

2282 - | 2212 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.