«Строковые данные»
Повторение
«Строковые данные»
"Функции и методы строк"
Генерация букв и цифр
ФОРМАТИРОВАНИЕ СТРОК
Решение задач
Задача 2
Задача 3
1.67M
Category: programmingprogramming

Строковые данные. Повторение

1. «Строковые данные»

2. Повторение

1. Понятие алгоритма.
2. Синтаксические и логические ошибки.
3. Данные в языке Python: константы и переменные
4. Типы данных
5. Условная операция. Условный оператор в языке Python:
структура оператора, полная и неполная формы,
использование сложных условий. Пример на языке Python.
6. Циклические алгоритмы (Оператор цикла for)
7. Оператор цикла с предусловием while в языке Python
8. Линейный массив: понятие массива, объявление,
инициализация массива, индексация элементов.

3.

Дан одномерный массив с зарплатами сотрудника за год.
Необходимо :
1) Определить общую зарплату за год
2) Определить премию сотрудника, которая равна
(max(зарплата)-min(зарплата))*2
3) Определить в каком месяце зарплата была максимальной
(вывести название месяца)
4) Определить общую сумму выплат за год

4.

5.

• #Ввод строки
string=input("Введите строку ")
print("Строка",string)
• string="Строка состоит из последовательности символов."
print("Строка",string)
string_list=string.split()
print(string_list)

6.

• #Cумма чисел в строке
string="10 -50 100"
print("Строка",string)
string_list=string.split()
print(string_list)
k=0
for i in range(len(string_list)):
k+=string_list[i]
print(k)
______________________________________________________
Traceback (most recent call last):
Строка 10 -50 100
File "C:/Тема_строки/1_пара_строки.py", line 8, in <module>
['10', '-50', '100']
k+=string_list[i]
TypeError: unsupported operand type(s) for +=: 'int' and 'str'

7.

• #Cумма чисел в строке
string="10 -50 100"
print("Строка",string)
string_list=string.split()
print(string_list)
k=0
for i in range(len(string_list)):
k+=int(string_list[i])
print(k)
______________________________________________________
Строка 10 -50 100
['10', '-50', '100']
60
string_list=list(map(int,input('Строка ').split()))
print(string_list,sum(string_list))
Строка 10 -50 100
[10, -50, 100] 60

8.

• string="10 -50 100"
print("Строка",string)
string_list=string.split()
print(string_list)
print("".join(string_list))
print(" ".join(string_list))
print("***".join(string_list))
______________________________________________________

9.

10.

11.

12.

string="0123456"
print("Строка",string[::2])
Строка 0246
string="0123456"
print("Строка",string[1:len(string):2])
Строка 135
string="1234567890"
print("Строка",sum(map(int,string[1:len(string):2])))
Строка 20

13.

string="1234567890"
print("Строка",string)
string[2]='-7'
print(string)
Traceback (most recent call last):
File "C:/Тема_строки/1_пара_строки.py", line 4, in <module>
string[2]='-7'
TypeError: 'str' object does not support item assignment
string="1234567890"
string=string[0:2]+"-7"+string[3:len(string)]
print(string)
12-74567890

14.

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

15.

16.

Кладовщик Главный_конструктор Спичрайтер Дворник Дефектолог Грузчик
Товаровед Спортивный_врач HTML-верстальщик Портье Главный конструктор
Спичрайтер Дворник Дефектолог Спортивный врач HTML-верстальщик
1.
2.
3.
4.
string="Строка Кладовщик Главный_конструктор
Спичрайтер Дворник Дефектолог Грузчик Товаровед
Спортивный_врач HTML-верстальщик Портье Главный
конструктор Спичрайтер Дворник Дефектолог
Спортивный_врач HTML-верстальщик".split()
string_list=[]
for i in range(len(string)):
if string[i] not in string_list:
string_list.append(string[i])
print(len(string_list))
for i in range (len(string_list)):
string_list[i]=string_list[i]+' '+str(round(random.uniform(5000,10000),2))
print(string_list[i])
print(string_list)

17.

1. 13
2. Строка - 5350.08
3. Кладовщик - 5058.77
4. Главный_конструктор - 5282.17
5. Спичрайтер - 9102.98
6. Дворник - 9830.74
7. Дефектолог - 9505.93
8. Грузчик - 8783.28
9. Товаровед - 9433.42
10. Спортивный_врач - 6162.61
11. HTML-верстальщик - 6057.03
12. Портье - 9660.9
13. Главный - 8409.89
14. конструктор - 7896.49
15. ['Строка
5350.08',
'Кладовщик
5058.77',
'Главный_конструктор - 5282.17', 'Спичрайтер - 9102.98',
'Дворник - 9830.74', 'Дефектолог - 9505.93', 'Грузчик - 8783.28',
'Товаровед - 9433.42', 'Спортивный_врач - 6162.61', 'HTMLверстальщик - 6057.03', 'Портье - 9660.9', 'Главный - 8409.89',
'конструктор - 7896.49']

18. «Строковые данные»

19. "Функции и методы строк"

"Функции и методы строк"
S.isdigit()
S.isalpha()
S.isalnum()
S.islower()
S.isupper()
Состоит ли строка из цифр
Состоит ли строка из букв
Состоит ли строка из цифр или букв
Состоит ли строка из символов в нижнем
регистре
Состоит ли строка из символов в верхнем
регистре

20.

S= ‘SQSHL80DFeKd4Ur6’
print (S)
print (S.isdigit())
print (S.isalpha())
print (S.isalnum())
print (S.islower())
print (S.isupper())
SQSHL80DFeKd4Ur6
False
False
True
False
False
S= ‘2857842148775687’
print (S)
print (S.isdigit())
print (S.isalpha())
print (S.isalnum())
print (S.islower())
print (S.isupper())
2857842148775687
True
False
True
False
False

21.

S.istitle()
Начинаются ли слова в строке с заглавной буквы
S.upper()
Преобразование строки к верхнему регистру
S.lower()
Преобразование строки к нижнему регистру
S.startswith(str)
Начинается ли строка S с шаблона str
S.endswith(str)
Заканчивается ли строка S шаблоном str
S=“zWSeJvUdbbCwBAXC”
print (S.istitle())
print (S.upper())
print (S.lower())
print (S.startswith('str'))
print (S.endswith('str'))
False
ZWSEJVUDBBCWBAXC
zwsejvudbbcwbaxc
False
False

22. Генерация букв и цифр

import random
import string
a = random.choice(string.ascii_uppercase)
b = random.choice(string.ascii_lowercase)
c = random.choice(string.digits)
print(“a = ”, a)
a=U
b=g
print(“b = “, b)
c=6
print(“c = ”, c )

23.

import random
import string
a = ' '.join(random.choice(string.ascii_uppercase) for x in
range(10))
b = ' '.join(random.choice(string.ascii_lowercase) for x in
range(10))
c = ' '.join(random.choice(string.digits) for x in range(10))
print(a) O K X W Q B Z R V K
print(b) q k a w f e n h w l
print(c) 3 7 6 7 1 7 2 1 9 2
c = ' '.join(random.choice(string.digits)+
random.choice(string.digits)
for x in range(10))
print(c) 54 15 69 35 67 46 49 49 94 06

24. ФОРМАТИРОВАНИЕ СТРОК

import random
import string
print("Мама купила {} яблок.".format
(' '.join(random.choice(string.digits))))
Мама купила 8 яблок.

25.

import random
import string
print("Мама купила {} {} яблок.".format
('красных',' '.join(random.choice(string.digits))))
Мама купила красных 5 яблок.
print("Мама купила {1} {0} яблок.".format
('красных',' '.join(random.choice(string.digits))))
Мама купила 7 красных яблок.
print("Мама купила {2} {0} яблок.".format
('красных',' '.join(random.choice(string.digits))))
IndexError: tuple index out of range

26.

Сотрудник Белибердиев получает логин QCMXGB пароль: Eamw1P9Q
Сотрудник Шепкин получает логин VYGVPV пароль: izUn7Mx2
Сотрудник Шкуратов получает логин HYORYQ пароль: 4oml1J7C
Сотрудник Карантиров получает логин FMRFDR пароль: AOR0dcMx
Сотрудник Степашин получает логин JMKHAE пароль: g8AjrqyD
Сотрудник Кривоухов получает логин GALBRF пароль: cdxeO7PL
import random
import string
string_1="Белибердиев,Шепкин,Шкуратов,Карантиров,Степашин,
Кривоухов".split(',')
for i in range(len(string_1)):
login=''.join(random.choice(string.ascii_uppercase)for x in
range(6))
pass_word= ''.join(random.choice(string.ascii_uppercase +
string.ascii_lowercase
+ string.digits) for x in range(8))
print ("Сотрудник {} получает логин {} пароль:
{}".format(string_1[i],login,pass_word))

27. Решение задач

28.

29.

30.

31.

32.

33.

34.

35.

36.

37.

38.

Задача 1
Сжать строку, указав сколько одинаковых букв идет
подряд. Во входящих данных используются только
буквы.
Пример:
входные данные:
aaaabbcaa
выходные данные:
a4b2c1a2

39. Задача 2

Создайте из четных символов строки st1
строку str2 и из нечетных символов строку str3.
Пример:
входные данные:
St1 Pascal 1234567890
выходные данные:
Str2 acl13579
Str3 Psa 24680

40. Задача 3

Определить,
как
часто
определенный символ в строке.
Пример:
входные данные:
St1 мама папа я
выходные данные:
м – 0,22
а – 0,44
п – 0,22
я – 0,11
встречается

41.

Задача 4
Создать
программу
перевода
кириллических символов в латинские
(транскрибирование) и вывести результат.
Пример:
Входные данные:
Строка кириллических символов
Выходные данные:
Stroka_kirillicheskih_simvolov
English     Русский Rules