Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Техника и электроника > Телефоны, смартфоны, комуникаторы, КПК, GPS > Nokia
Расширенный поиск

Nokia Раздел для смартфонов и телефонов. Тут море полезной информации, можно бесплатно скачать программы для смартфона, взломать смартфон и многое другое. Все для Symbian 9

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2009, 16:10 Вверх   #1
Коренной житель
 
Аватар для Yerdna
Yerdna вне форума
Доп. информация
По умолчанию Python на Symbian S60 числа, присваивание и преобразования

Арифметические операции

Python, как и положено практически каждому языку программирования, предоставляет
возможность осуществления простых арифметических операций:

x y

Возвращает сумму чисел x и y.

x — y

Возвращает разницу между числами x и y.

x * y

Возвращает произведение чисел x и y.

x / y

Возвращает частное от деления чисел x и y.

x % y

Возвращает остаток от деления чисел x и y.

x**y

Возвращает число x в степени y.

— x

Возвращает число x с противоположным знаком.

x

Возвращает число x без изменений.


Обычные вычисления.


Конечно, на основных операциях над числами далеко не уедешь. Сложные
математические задачи поможет решить встроенная в Python библиотека функций.
Функции для работы с числами

abs(x)

Возвращает абсолютное значение числа x:

>>> abs(5)

5

>>> abs(-2)

2

>>>

cmp(x, y)

Сравнивает числа x и y и возвращает: -1, если x y:

>>> cmp(-1,2)

-1

>>> cmp(2,1)

1

>>> cmp(3,3)

0

>>>

divmod(a, b)

Возвращает кортеж из двух чисел: целой части и остатка от деления x на y:

>>> divmod(5,3)

(1, 2)

>>>

min(v1, v2, ...)

Возвращает наименьшее число из нескольких чисел, переданных функции:

>>> min(-1,2,3)

-1

>>>

max(v1, v2, ...)

Возвращает наибольшее число из нескольких чисел, переданных функции:

>>> max(-1,2,3)

3

>>>

pow(x, y)

Возвращает x в степени y:

>>> pow(2,3)

8

>>>


Функции для работы с числами.

Битовые операции для работы с числами

Возможно, кому-то при решении различных логических задач пригодятся функции для
побитовой работы с числами:

x | y

Возвращает битовое ИЛИ чисел x и y:

x ^ y

Возвращает битовое исключающее ИЛИ чисел x и y:

x & y

Возвращает битовое И чисел x и y:

x << n

Возвращает число, полученное на основе x, биты которого сдвинуты на n влево.
Эквивалентно умножению числа x на двойку в степени n (x * 2 ** n). Отличается
очень высокой скоростью выполнения по сравнению с обычным умножением:

x >> n

Возвращает число, полученное на основе x, биты которого сдвинуты на n вправо.
Эквивалентно делению числа x на двойку в степени n (x / 2 ** n). Отличается
очень высокой скоростью выполнения по сравнению с обычным делением:

~x

Возвращает число, полученное на основе x, все биты которого инвертированы.


Битовые операции — пригождается редко, но метко.

Сокращенная форма записи (простое присваивание)

В Python для удобства и наглядности предусмотрена особая форма записи операций с
числами:

lvalue = expression

Аналогичен lvalue = lvalue expression.

lvalue -= expression

Аналогичен lvalue = lvalue — expression.

lvalue *= expression

Аналогичен lvalue = lvalue * expression.

lvalue /= expression

Аналогичен lvalue = lvalue / expression.

lvalue %= expression

Аналогичен lvalue = lvalue % expression.

lvalue **= expression

Аналогичен lvalue = lvalue ** expression.

lvalue &= expression

Аналогичен lvalue = lvalue & expression.

lvalue |= expression

Аналогичен lvalue = lvalue | expression.

lvalue ^= expression

Аналогичен lvalue = lvalue ^ expression.

lvalue >>= expression

Аналогичен lvalue = lvalue >> expression.

lvalue <<= expression

Аналогичен lvalue = lvalue << expression.

Т.е. эта форма записи предполагает определенное действие над переменными lvalue
и expression с последующим присваиванием результата обратно переменной lvalue:

>>> a = 1

>>> a = a 1

>>> print a

1

>>> a =1

>>> print a

2

>>>


Сокращенная форма — очень удобная вещь.

Множественное присваивание

Одна из отличительных черт Python — множественное присваивание. Применяется для
удобной записи часто используемых операций.

>>> a = b = c = 0

>>> print a, b, c

0, 0, 0

>>>

Т.е. можно нескольким переменным присвоить одно и то же значение (число, текст).
Пригождается эта особенность «Питона», например, когда в начале программы надо
большому числу переменных присвоить стартовые значения.

Множественное присваивание еще используется и так:

>>> a, b = 0, 1

>>> print a, b

0, 1

>>> a, b = b, a

>>> print a, b

1, 0

>>>


Множественное присваивание.


Т.е. Python вычисляет все значения, находящиеся в правой части (после знака
равно «=») и присваивает их левой (соответственно, до знака равно «=»). Если бы
мы захотели поменять значения двух переменных местами без использования
множественного присваивания, то нам пришлось бы обязательно использовать третью
переменную.

Множественное присваивание используется для распаковки и упаковки списков и
кортежей:

>>> list = [1, 2, 3]

>>> a, b, c = list

>>> print a, b, c

1, 2, 3

>>>

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

>>> divmod(5,3)

(1, 2)

>>> a, b = divmod(5,3)

>>> print a,b

1, 2

>>>

Упаковка же переменных в список или кортеж, по сути, является способом их
создания, который мы и использовали до сих пор:

>>> a, b, c = 1, 2, 3

>>> list = [a, b, c]

>>> tuple = (a, b, c)

>>> print list, tuple

[1, 2, 3], (1, 2, 3)

>>>


Упаковка — распаковка.


Часто именно таким образом — упаковкой — передаются аргументы некоторым функциям.

Преобразование между различными типами данных

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

int(x)

Преобразовывает значение в целое число. Если ему передано вещественное число, то
целое число получается из него обычным отбрасыванием дробной части:

>>> int(«32»)

32

>>> int(3.99999)

3

>>>

float(x)

Преобразовывает целые числа и строки в дробный тип:

>>> float(32)

32.0

>>> float(«3.14159»)

3.14159

>>>

Запомните! Если преобразованию подвергается строка с числами, то наличие в ней
букв и знаков препинания ведет к ошибке.

round(x [,n])

Возвращает вещественное число, полученное в результате округления числа x до n
знаков после точки. По умолчанию n равен нулю:

>>> round(2.0/3.0, 4)

0.6667

>>>

str(x)

Отвечает за преобразование в строку. Именно эту функцию предварительно запускает
команда print:

>>> str(32)

‘32’

>>> str(3.14149)

‘3.14149’

>>>str([1, 2, 3])

[1, 2, 3]

>>>

list(seq)

Преобразовывает строки и кортежи в список:

>>> list(«Hello»)

[«H», «e», «l», «l», «o»]

>>> list((1, 2, 3))

[1, 2, 3]

>>>

tuple(seq)

Преобразовывает строки и списки в кортеж:

>>> tuple(«Hello»)

(«H», «e», «l», «l», «o»)

>>> tuple([1, 2, 3]))

(1, 2, 3)

>>>

repr(date)

Преобразует любой тип данных в строку так, чтобы ее можно было восстановить
обратно функцией eval():

>>> repr([1, 2.0, ’Three’]))

‘[1, 2.0, ’Three’]’

>>>

eval(date)

Преобразует строку, полученную функцией repr(), в соответствующий тип данных:

>>> eval(‘[1, 2.0, ’Three’]’))

[1, 2.0, ’Three’]

>>>


Преобразуем сложные типы данных.


hex(x)

Возвращает шестнадцатеричное представление числа x в виде строки с префиксом «0x»:

>>> hex(16)

0x10

>>>

oct(x)

Возвращает восьмеричное представление числа x в виде строки с префиксом «0»:

>>> hex(16)

020

>>>

Для получения информации о типе той или иной переменной можно использовать
функцию type():

>>> type(8)



>>> type(8.33)



>>> type(Hello!)



>>> type([1, 2, 3])



>>> type((3, 2, 1))



>>>


Получение типа данных функцией type().


Получаем следующие типы:

— type int — целочисленный тип;

— type float — вещественное число;

— type str — строковой тип;

— type list — список;

— type tuple — кортеж.

На этой ноте я заканчиваю и прощаюсь до следующей статьи, где мы изучим способы
управления программой.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Python на Symbian S60 объекты, создание интерфейса Yerdna Nokia 4 05.04.2009 18:45
Python на Symbian S6 ассоциации для Python-скриптов Yerdna Nokia 0 05.04.2009 16:14
Python на Symbian S60 циклы и функции Yerdna Nokia 0 05.04.2009 16:13
Python на Symbian S60 списки и объект Listbox Yerdna Nokia 0 05.04.2009 16:09
Python на Symbian S60 сервисные функции системы Yerdna Nokia 0 05.04.2009 16:08


Текущее время: 08:22. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.11410 секунды с 12 запросами