Операторы для работы с последовательностями 
";


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Операторы для работы с последовательностями



>>> print("Строка1" + "Строка2") # Конкатенация строк

Строка1Строка2

>>> [1, 2, 3] + [4, 5, 6] # Списки

[1, 2, 3, 4, 5, 6]

>>> (1, 2, 3) + (4, 5, 6) # Кортежи

(1, 2, 3, 4, 5, 6)

 

 

>>> "s" * 20 # Строки

'ssssssssssssssssssss'

>>> [1, 2] * 3 # Списки

[1, 2, 1, 2, 1, 2]

>>> (1, 2) * 3 # Кортежи

(1, 2, 1, 2, 1, 2)

 

 

>>> "Строка" in "Строка для поиска" # Строки

True

>>> "Строка2" in "Строка для поиска" # Строки

False

>>> 2 in [1, 2, 3], 4 in [1, 2, 3] # Списки

(True, False)

>>> 2 in (1, 2, 3), 6 in (1, 2, 3) # Кортежи

(True, False)

 

 

>>> "Строка" not in "Строка для поиска" # Строки

False

>>> "Строка2" not in "Строка для поиска" # Строки

True

>>> 2 not in [1, 2, 3], 4 not in [1, 2, 3] # Списки

(False, True)

>>> 2 not in (1, 2, 3), 6 not in (1, 2, 3) # Кортежи

(False, True)

Операторы присваивания

>>> x = 5; x

 

 

>>> x = 5; x += 10 # Эквивалентно x = x + 10

>>> x

 

 

>>> s = "Стр"; s += "ока"

>>> print(s)

Строка

 

 

>>> x = 10; x -= 5 # Эквивалентно x = x — 5

>>> x

 

 

>>> x = 10; x *= 5 # Эквивалентно x = x * 5

>>> x

 

 

>>> s = "*"; s *= 20

>>> s

'********************'

 

 

>>> x = 10; x /= 3 # Эквивалентно x = x / 3

>>> x

3.3333333333333335

>>> y = 10.0; y /= 3.0 # Эквивалентно y = y / 3.0

>>> y

3.3333333333333335

 

 

>>> x = 10; x //= 3 # Эквивалентно x = x // 3

>>> x

>>> y = 10.0; y //= 3.0 # Эквивалентно y = y // 3.0

>>> y

3.0

 

 

>>> x = 10; x %= 2 # Эквивалентно x = x % 2

>>> x

>>> y = 10; y %= 3 # Эквивалентно y = y % 3

>>> y

 

 

>>> x = 10; x **= 2 # Эквивалентно x = x ** 2

>>> x

 

Приоритет выполнения операторов

>>> x = 5 + 10 * 3 / 2

>>> x

20.0

 

 

>>> x = (5 + 10) * 3 / 2

>>> x

22.5

Условные операторы и циклы

>>> True + 2 # Эквивалентно 1 + 2

>>> False + 2 # Эквивалентно 0 + 2

 

 

>>> x = True; y = False

>>> x, y

(True, False)

 

 

>>> bool(1), bool(20), bool(-20)

(True, True, True)

>>> bool(1.0), bool(0.1), bool(-20.0)

(True, True, True)

 

 

>>> bool("0"), bool([0, None]), bool((None,)), bool({"x": 5})

(True, True, True, True)

 

 

>>> bool(0), bool(0.0)

(False, False)

 

 

>>> bool(""), bool([]), bool(())

(False, False, False)

 

 

>>> bool(None)

False

Операторы сравнения

>>> 1 == 1, 1 == 5

(True, False)

 

 

>>> 1!= 5, 1!= 1

(True, False)

 

 

>>> 1 < 5, 1 < 0

(True, False)

 

 

>>> 1 > 0, 1 > 5

(True, False)

 

 

>>> 1 <= 5, 1 <= 0, 1 <= 1

(True, False, True)

 

 

>>> 1 >= 0, 1 >= 5, 1 >= 1

(True, False, True)

 

 

>>> "Строка" in "Строка для поиска" # Строки

True

>>> 2 in [1, 2, 3], 4 in [1, 2, 3] # Списки

(True, False)

>>> 2 in (1, 2, 3), 4 in (1, 2, 3) # Кортежи

(True, False)

 

 

>>> "x" in {"x": 1, "y": 2}, "z" in {"x": 1, "y": 2}

(True, False)

 

 

>>> "Строка" not in "Строка для поиска" # Строки

False

>>> 2 not in [1, 2, 3], 4 not in [1, 2, 3] # Списки

(False, True)

>>> 2 not in (1, 2, 3), 4 not in (1, 2, 3) # Кортежи

(False, True)

 

 

>>> x = y = [1, 2]

>>> x is y

True

>>> x = [1, 2]; y = [1, 2]

>>> x is y

False

 

 

>>> x = 2; y = 2; z = 2

>>> x is y, y is z

(True, True)

 

 

>>> x = y = [1, 2]

>>> x is not y

False

>>> x = [1, 2]; y = [1, 2]

>>> x is not y

True

 

 

>>> x = 1; y = 1

>>> x == y

True

>>> not (x == y), not x == y

(False, False)

>>> x = 10

>>> 1 < x < 20, 11 < x < 20

(True, False)

 

 

>>> 1 < 5 and 2 < 5 # True and True == True

True

>>> 1 < 5 and 2 > 5 # True and False == False

False

>>> 1 > 5 and 2 < 5 # False and True == False

False

>>> 10 and 20, 0 and 20, 10 and 0

(20, 0, 0)

 

 

>>> 1 < 5 or 2 < 5 # True or True == True

True

>>> 1 < 5 or 2 > 5 # True or False == True

True

>>> 1 > 5 or 2 < 5 # False or True == True

True

>>> 1 > 5 or 2 > 5 # False or False == False

False

>>> 10 or 20, 0 or 20, 10 or 0

(10, 20, 10)

>>> 0 or "" or None or [] or "s"

's'

4.2. Оператор ветвления if...else

Листинг 4.1. Проверка числа на четность

# -*- coding: utf-8 -*-

x = int(input("Введите число: "))

if x % 2 == 0:

print(x, " - четное число")

else:

print(x, " - нечетное число")

input()

 

 

# -*- coding: utf-8 -*-

x = int(input("Введите число: "))

if x % 2 == 0: print(x, " - четное число")

else: print(x, " - нечетное число")

input()

 

 

# -*- coding: utf-8 -*-

x = int(input("Введите число: "))

if x % 2 == 0: print(x, end=" "); print("- четное число")

else: print(x, end=" "); print("- нечетное число")

input()

 

 

# -*- coding: utf-8 -*-

x = int(input("Введите число: "))

if x % 2 == 0:

print(x, end=" ")

print("- четное число")

else:

print(x, end=" ")

print("- нечетное число")

input()

 

Листинг 4.2. Проверка нескольких условий

# -*- coding: utf-8 -*-

print("""Какой операционной системой вы пользуетесь?

1 — Windows 8

2 — Windows 7

3 — Windows Vista

4 — Windows XP

5 — Другая""")

os = input("Введите число, соответствующее ответу: ")

if os == "1":

print("Вы выбрали: Windows 8")

elif os == "2":

print("Вы выбрали: Windows 7")

elif os == "3":

print("Вы выбрали: Windows Vista")

elif os == "4":

print("Вы выбрали: Windows XP")

elif os == "5":

print("Вы выбрали: другая")

elif not os:

print("Вы не ввели число")

else:

print("Мы не смогли определить вашу операционную систему")

input()

 

Листинг 4.3. Вложенные инструкции

# -*- coding: utf-8 -*-

print("""Какой операционной системой вы пользуетесь?

1 — Windows 8

2 — Windows 7

3 — Windows Vista

4 — Windows XP

5 — Другая""")

os = input("Введите число, соответствующее ответу: ")

if os!= "":

if os == "1":

print("Вы выбрали: Windows 8")

elif os == "2":

print("Вы выбрали: Windows 7")

elif os == "3":

print("Вы выбрали: Windows Vista")

elif os == "4":

print("Вы выбрали: Windows XP")

elif os == "5":

print("Вы выбрали: другая")

else:

print("Мы не смогли определить вашу операционную систему")

else:

print("Вы не ввели число")

input()

 

 

>>> print("Yes" if 10 % 2 == 0 else "No")

Yes

>>> s = "Yes" if 10 % 2 == 0 else "No"

>>> s

'Yes'

>>> s = "Yes" if 11 % 2 == 0 else "No"

>>> s

'No'

4.3. Цикл for

for x in range(1, 101): print(x)

 

Листинг 4.4. Перебор букв в слове

for s in "str":

print(s, end=" ")

else:

print("\nЦикл выполнен")

 

Листинг 4.5. Перебор списка и кортежа

for x in [1, 2, 3]:

print(x)

for y in (1, 2, 3):

print(y)

 

Листинг 4.6. Перебор элементов словаря

>>> arr = {"x": 1, "y": 2, "z": 3}

>>> arr.keys()

dict_keys(['y', 'x', 'z'])

>>> for key in arr.keys(): # Использование метода keys()

print(key, arr[key])

 

y 2

x 1

z 3

>>> for key in arr: # Словари также поддерживают итерации

print(key, arr[key])

 

y 2

x 1

z 3

 

 

>>> arr = {"x": 1, "y": 2, "z": 3}

>>> for key in sorted(arr):

print(key, arr[key])

 

x 1

y 2

z 3

 

Листинг 4.7. Перебор элементов списка кортежей

>>> arr = [(1, 2), (3, 4)] # Список кортежей

>>> for a, b in arr:

print(a, b)

 

1 2

3 4

4.4. Функции range() и enumerate()

arr = [1, 2, 3]

for i in arr:

i = i * 2

print(arr) # Результат выполнения: [1, 2, 3]

 

Листинг 4.8. Пример использования функции range()

arr = [1, 2, 3]

for i in range(len(arr)):

arr[i] *= 2

print(arr) # Результат выполнения: [2, 4, 6]

 

 

for i in range(1, 101): print(i)

 

 

for i in range(100, 0, -1): print(i)

 

 

for i in range(2, 101, 2): print(i)

 

Листинг 4.9. Создание списка чисел на основе диапазона

>>> obj = range(len([1, 2, 3]))

>>> obj

range(0, 3)

>>> obj[0], obj[1], obj[2] # Доступ по индексу

(0, 1, 2)

>>> obj[0:2] # Получение среза

range(0, 2)

>>> i = iter(obj)

>>> next(i), next(i), next(i) # Доступ с помощью итераторов

(0, 1, 2)

>>> list(obj) # Преобразование диапазона в список

[0, 1, 2]

>>> 1 in obj, 7 in obj # Проверка вхождения значения

(True, False)

 

 

>>> obj = range(1, 5)

>>> obj.index(1), obj.index(4)

(0, 3)

>>> obj.index(5)

... Фрагмент опущен...

ValueError: 5 is not in range

 

 

>>> obj = range(1, 5)

>>> obj.count(1), obj.count(10)

(1, 0)

 

Листинг 4.10. Пример использования функции enumerate()

arr = [1, 2, 3, 4, 5, 6]

for i, elem in enumerate(arr):

if elem % 2 == 0:

arr[i] *= 2

print(arr) # Результат выполнения: [1, 4, 3, 8, 5, 12]

 

 

>>> arr = [1, 2]

>>> obj = enumerate(arr, start=2)

>>> next(obj)

(2, 1)

>>> next(obj)

(3, 2)

>>> next(obj)

Traceback (most recent call last):

File "<pyshell#10>", line 1, in <module>

next(obj)

StopIteration

4.5. Цикл while

Листинг 4.11. Вывод чисел от 1 до 100

i = 1 # <Начальное значение>

while i < 101: # <Условие>

print(i) # <Инструкции>

i += 1 # <Приращение>

 

Листинг 4.12. Вывод чисел от 100 до 1

i = 100

while i:

print(i)

i -= 1

 

Листинг 4.13. Перебор элементов списка

arr = [1, 2, 3]

i, count = 0, len(arr)

while i < count:

arr[i] *= 2

i += 1

print(arr) # Результат выполнения: [2, 4, 6]

 

4.6. Оператор continue. Переход на следующую итерацию цикла

Листинг 4.14. Оператор continue

for i in range(1, 101):

if 4 < i < 11:

continue # Переходим на следующую итерацию цикла

print(i)

4.7. Оператор break. Прерывание цикла

Листинг 4.15. Оператор break

i = 1

while True:

if i > 100: break # Прерываем цикл

print(i)

i += 1

 

Листинг 4.16. Суммирование неопределенного количества чисел

# -*- coding: utf-8 -*-

print("Введите слово 'stop' для получения результата")

summa = 0

while True:

x = input("Введите число: ")

if x == "stop":

break # Выход из цикла

x = int(x) # Преобразуем строку в число

summa += x

print("Сумма чисел равна:", summa)

input()

Числа

>>> x = 0; y = 10; z = -80

>>> x, y, z

(0, 10, -80)

 

 

>>> 0b11111111, 0b101101

(255, 45)

 

 

>>> 0o7, 0o12, 0o777, 0O7, 0O12, 0O777

(7, 10, 511, 7, 10, 511)

 

 

>>> 0X9,0xA, 0x10, 0xFFF, 0xfff

(9, 10, 16, 4095, 4095)

 

 

>>> 10.,.14, 3.14, 11E20, 2.5e-12

(10.0, 0.14, 3.14, 1.1e+21, 2.5e-12)

 

 

>>> 0.3 — 0.1 — 0.1 — 0.1

-2.7755575615628914e-17

 

 

>>> from decimal import Decimal

>>> Decimal("0.3") — Decimal("0.1") — Decimal("0.1") — Decimal("0.1")

Decimal('0.0')

 

 

>>> from fractions import Fraction

>>> Fraction(4, 5)

Fraction(4, 5)

 

 

>>> Fraction(1, 2)

Fraction(1, 2)

>>> Fraction("0.5")

Fraction(1, 2)

>>> Fraction(0.5)

Fraction(1, 2)

 

 

>>> Fraction(9, 5) - Fraction(2, 3)

Fraction(17, 15)

>>> Fraction("0.3") — Fraction("0.1") — Fraction("0.1") — Fraction("0.1")

Fraction(0, 1)

>>> float(Fraction(0, 1))

0.0

 

 

>>> 2+5J, 8j

((2+5j), 8j)



Поделиться:


Последнее изменение этой страницы: 2016-06-23; просмотров: 289; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.149.230.44 (0.004 с.)