Главная » Просмотр файлов » Саммерфилд - Программирование на Python 3

Саммерфилд - Программирование на Python 3 (1077331), страница 23

Файл №1077331 Саммерфилд - Программирование на Python 3 (Саммерфилд - Программирование на Python 3) 23 страницаСаммерфилд - Программирование на Python 3 (1077331) страница 232018-01-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 23)

Он имеет то же действие, что и символ «0» в случае вывода целых чисел или символ «9» в случае вывода чисел с плавающей точкой. Отличительной особенностью символа «л» является то, что он учитывает региональные настройки, то есть использует характерный для текущего региона символ-разделитель целой и дробной части числа и разделитель разрядов. Регион, используемый по умолчанию, называется «С», и для этого региона в качестве разделителя целой и дробной части числа используется точка, а в качестве разделителя разрядов — пустая строка. »> "(О: ° <15)7.богшат(18340427) '18340427* ° ° ° * *' »> "(О:*>15)".Гогшат(18340427) '** ° * ° ° .18340427' »> "(О:* 15)",гогшат(18340427) '** ° 18340427 ° ° **' »> "(О ° 15)".(огшат(-18340427) '***-18340427 ° ° ° ' в * символ-заполнитель, выравнивание в по левому краю, минимальная ширина 15 в символ-заполнитель, выравнивание В по правому краю, минимальная ширина 15 В символ-заполнитель, выравнивание В по центРу, минимальная ширина 15 В ° символ-заполнитель, выравнивание В по центру, минимальная ширина 15 юв Глава 2.

Типы данных Чтобы иметь возможность принимать во внимание региональные на- стройки пользователя, в начале программы в качестве двух первых выполняемых инструкций можно добавить следующие две строки !вротс 1оса1е )оса)е.ает)оса)е()оса)е.ОС АСС "") Передавая пустую строку в качестве названия региона, мы тем самым предлагаем интерпретатору попытаться автоматически определить регион пользователя (например, путем определения значения переменной окружения САЕ)6) и перейти на использование региона «С» в случае неудачи. Ниже приводятся несколько примеров, демонстрирующих влияние различных региональных настроек на вывод целых и вещественных чисел: х, у = (1234567890, 1234.56) 1оса1е.эег!оса1е(1оса1е.СС АСС с = "(О:и) (1:п)".тагват(х, у) 1оса1е.ае(1оса1е(1оса1е.(С АИ., еп = "(О:п) (1:п)".Тогва((х, у) 1оса1е.зе()оса1е(1оса1е.(С АЫЦ Се = "(О.п) (1:п)7.тогват(х, у) "С") а с == "1234567890 1234.56" "еп 05.ОТЕ-8") а еп == "1,234,567,890 1,234 56" "Се ОЕ.ОТЕ-8") а Ое == "1.234.567.890 1.234,56" Символ «и» очень удобно использовать с целыми числами, но при вы- воде чисел с плавающей точкой он имеет ограниченное применение, потому что большие вещественные числа выводятся в экспоненциаль- ной форме.

Для форматирования чисел с плавающей точкой используются те же самые спецификаторы, что и для целых чисел, с двумя отличиями в конце. После необязательного значения минимальной ширины поля вывода можно указать число знаков после десятичной точки, добавив символ точки и целое число. В самом конце мы можем указать символ типа: «е» — для вывода числа в экспоненциальной форме, с символом «е» в нижнем регистре; «Е» — для вывода числа в зкспоненциальной форме, с символом «Е» в верхнем регистре; «7» — для вывода числа в стандартной форме, «9» — для вывода числа в «общей» форме, то есть для небольших чисел действует как символ «Г», а для очень больших— как символ «е», и «О» — то же самое, что символ «9», только использу- В программах, имеющих несколько потоков выполнения, функцию 1оса- 1е, зес1сса1е() лучше вызывать всего один раз, на этапе запуска програм- мы, и еще до того, как будут запущены дополнительные потоки, поскольку эту функцию обычно небезопасно вызывать э многопоточном окружении.

При выводе чисел с плавающей точкой спецификаторы формата дают возможность управлять символом-заполнителем, выравниванием в пределах поля вывода, выводом знака числа, минимальной шириной поля, числом знаков после десятичной точки и формой представления — простая, экспоненциальная или в виде процентов. Строки 109 ется формат либо «(», либо «Е».

Кроме того, допускается использовать символ «%», при использовании которого выводимое число умножается на 100 и для вывода применяется формат «[», с добавлением символа «%» в конце числа. Ниже приводятся несколько примеров вывода числа в экспоненциаль- ной и стандартной форме: »> авоипт = (10 * ° 3) * вати.р! »> "[(О:12.2е)] [(О:12.2() Г .(птват(авпипт) '[ 3.14е+03] [ 3141.59]' »> "[(О. >12.2е)) [(О:*>12.27)]".(птват(авпипт) '[ ° ° ° 3.

14е+03] [*****3141 59] »> "[(О; >+12.2е)) [(О:*>+12.2()]".(отват(авпипт) '[ ° "«3. 14е+03] [** ° *+3141.59]' В первом примере установлена минимальная ширина поля вывода 12 символов и 2 знака после десятичной точки. Второй пример построен на основе первого и к нему добавлен вывод символа-заполнителя «*». При использовании символа-заполнителя необходимо указывать символ выравнивания, поэтому мы указали выравнивание по правому краю [даже при том, что этот способ выравнивания используется по умолчанию для чисел).

Третий пример построен на основе двух предыдущих, в нем добавлен символ «+ » управления принудительным выводом знака числа. К моменту написания этих строк в языке Руй[топ отсутствовали средства прямого управления форматированием комплексных чисел. Однако мы легко можем решить эту проблему, форматируя действительную и мнимую части как отдельные числа с плавающей точкой. Например: »> "(О.геа):.3()(О.!вас:».31))".(игват(4.75917«1.2042)) '4.759«1.204)' »> "(О.геа):.Зт)(0.!ва9;+.31 Ц ".титват(4.75917-1.2042)) '4.759-1.204)' Мы обращаемся к каждому атрибуту комплексного числа по отдельности и форматируем их как числа с плавающей точкой с тремя знаками после запятой.

Кроме того, мы принудительно выводим знак мнимой части, добавляя символ /. Пример: рг!п1 ыпкоде.ру В предыдущих подразделах мы детально исследовали спецификаторы формата для метода зтг. топив(() и видели достаточно много фрагментов программного кода, демонстрирующих аспекты их применения на практике. В этом подподразделе мы рассмотрим небольшой, но достаточно поучительный пример использования метода э! г. (Огвз((), в котором мы увидим применение спецификаторов формата в реальном контексте. В примере также используются некоторые строковые методы, Глава 2.

Типы данных с которыми мы познакомились в предыдущем разделе, и вводится в использование функция из модуля ап1собебага.' Эта программа состоит всего из 28 строк выполняемого программного кода. Она импортирует два модуля, вув и сп!собебага, и определяет одну функцию — рг1п! ап1собе 180]е(). рассмотрение примера мы начнем с запуска программы, чтобы увидеть, что она делает; затем мы рассмотрим программный код в конце программы, где выполняется вся фактическая работа; и в заключение рассмотрим функцию, определяемую в программе.

рг!пг ап!созе.ру вроКеа бесТеа1 Пех слг пале При запуске без аргументов программа выводит таблицу всех символов Юникода, начиная с пробела и до символа с наибольшим возможным кодом. При запуске с аргументом, как показано в примере, выводятся только те строки таблицы, где в названии символов Юникода содержится значение строки-аргумента, переведенной в нижний регистр. вогб = Ноле !г 1еп(вув.агдч) > 1: вув.агдч[1] !и ("-П", '--Пе1р'): рг1п1("чваде; (0) [в1г!пд]Г.гогаа!(вув.агдч[01)) чога = 0 е1ве: нага = вув.агдч[1]. 1очгег() Эта программа предполагает, что консоль настроена на раГлава 7, рабе- боту в кодировке Т)Тг -8. К сожалению, консоль в операцион- „ф 1п „к ной системе ч(Г(пдочгв имеет весьма ограниченную поддерж- атр 334 ку Т)Тг-8, а консоль в системе Мас 08 Х по умолчанию использует кодировку Арр1е Котап.

Чтобы обойти вти ограничения, в состав примеров к книге включен файл рг)лв ил(соде ил(,ру — версия программы, выполняющая вывод в файл, который затем может быть открыт в редакторе, таком как 1ЭЕЕп поддерживающем кодировку Т)ТР-8. 10018 2722 10019 2723 10020 2724 10021 2725 10035 2733 10043 2738 10044 2730 10045 2730 10051 2743 10057 2749 10058 274А 10059 2748 + Рочг теагагор-зрокеа Авгег1вк ф Рочг Вв11ооп-Зракеа Аввеггвк + Невчу Ровг Ва!1ооп-Зрокеб Ав!еывх + Роаг О!ае-ЗроКеа АввегвВК ва Е4цл1 ЗроКеа Авгег1вк :К Теагбгор-ЗроКеа Авгеывк Нг Ореп Сел!ге Теагагор-ЗроКеа Ав(ег4вк Ф неачу Тевгагор-Зрокеб Автегввк гв неачу теагагор-Зрокеб Р!пвпее1 Аввег1вк 84 Ва11ооп-ЗроКеб Авгег!вк Еа Е!цлг Теагагор-Зрокеб Ргоре11ег Автег1вк 84 Невчу ЕТдлг Тевгагар-Зрокеб Ргоре11ег АвтеывК Строки »Г »ого!= 0; рг!и! оп!собе гаа1е(аогд) После инструкций импортирования и определения функции рг!п! оп!— соде !ад)е() выполнение достигает программного кода, показанного выше.

Сначала предположим, что пользователь не указал в командной строке искомое слово. Если аргумент командной строки присутствует и это -(1 или — пе1р, программа выводит информацию о порядке использования и устанавливает флаг аргб в значение О, указывая тем самым, что работа завершена. В противном случае в переменную хо гд записывается копия аргумента, введенного пользователем, с преобразованием всех символов в нижний регистр. Если значение аогд не равно О, программа выводит таблицу. При выводе информации о порядке использования применяется спецификатор формата, который представляет собой простое имя формата, в данном случае — порядковый номер позиционного аргумента. Мы могли бы записать эту строку, как показано ниже: рг1п!("саада; (0[0]) [в!гвпд]".гогаа!(вув.агро)) При таком подходе первый символ 0 соответствует порядковому номеру позиционного аргумента, а [О] — это индекс элемента внутри аргумента, и такой прием сработает, потому что вув.

а гдо является списком. да( рг1п! оп1сода !аа(а(аогд): рг1п!("бес!аа1 Пех саг (О: 40)".Гогаа!("паае")) рг1п!("-- †--- ----- --- (О:-<40)".(огаа!("")) собе = огд(" ") епб = вув.аахопвсоде »П11а собе < епд: с = сог(собе) пава = оп1содада!а.паап(с, " ° ° опхпоап ° ° ° ") в( оогд 1в попе ог аогд ап папе. 1ооаг(); рг(п!("(О:7) (Огбх) (О: Зс) (1)".Гогаа!( соде, паза.1а11е())) сода += 1 Мы использовали пару пустых строк исключительно для улучшения удобочитаемости. Первые две строки функции выводят строки заголовка.

Характеристики

Тип файла
DJVU-файл
Размер
6,88 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6417
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее