форкнуто от main/python-labs
Родитель
2b84f3c7a7
Сommit
d446893266
@ -1,41 +1,54 @@
|
||||
# ОБЩЕЕ КОНТРОЛЬНОЕ ЗАДАНИЕ по Теме 5
|
||||
Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А.
|
||||
|
||||
## Задание
|
||||
|
||||
>>> nums = tuple(str(random.randint(6, 56)) for _ in range(125))
|
||||
>>> nums
|
||||
('7', '34', '42', '20', '50', '45', '9', '29', '17', '9', '51', '51', '39', '22', '49', '34', '45', '29', '49', '48', '56', '28', '48', '47', '41', '43', '33', '44', '49', '10', '30', '6', '49', '14', '41', '18', '7', '41', '20', '42', '56', '54', '20', '40', '18', '13', '32', '40', '44', '40', '37', '39', '8', '43', '33', '40', '20', '10', '10', '39', '46', '37', '9', '52', '45', '10', '37', '18', '56', '47', '46', '20', '30', '42', '49', '43', '22', '11', '23', '30', '30', '47', '31', '43', '32', '27', '20', '24', '25', '50', '54', '15', '42', '40', '24', '27', '10', '13', '39', '27', '34', '43', '11', '44', '41', '14', '38', '21', '45', '31', '17', '48', '18', '54', '21', '38', '30', '48', '35', '32', '38', '35', '35', '56', '24')
|
||||
#Примечание: если итератор не надо использовать в теле цикла, принято просто обозначать его _
|
||||
>>> group = ["Timoshenko", "Hodyk", "Kovalenko", "Filippov", "Goloshchapov"]
|
||||
>>> fl = open("okz.okz", "wb")
|
||||
>>> pickle.dump(nums, fl)
|
||||
>>> pickle.dump(group, fl)
|
||||
>>> fl.close()
|
||||
>>> fl = open("okz.okz", "rb")
|
||||
>>> nums1 = pickle.load(fl)
|
||||
>>> nums1
|
||||
('7', '34', '42', '20', '50', '45', '9', '29', '17', '9', '51', '51', '39', '22', '49', '34', '45', '29', '49', '48', '56', '28', '48', '47', '41', '43', '33', '44', '49', '10', '30', '6', '49', '14', '41', '18', '7', '41', '20', '42', '56', '54', '20', '40', '18', '13', '32', '40', '44', '40', '37', '39', '8', '43', '33', '40', '20', '10', '10', '39', '46', '37', '9', '52', '45', '10', '37', '18', '56', '47', '46', '20', '30', '42', '49', '43', '22', '11', '23', '30', '30', '47', '31', '43', '32', '27', '20', '24', '25', '50', '54', '15', '42', '40', '24', '27', '10', '13', '39', '27', '34', '43', '11', '44', '41', '14', '38', '21', '45', '31', '17', '48', '18', '54', '21', '38', '30', '48', '35', '32', '38', '35', '35', '56', '24')
|
||||
>>> group1 = pickle.load(fl)
|
||||
>>> group1
|
||||
['Timoshenko', 'Hodyk', 'Kovalenko', 'Filippov', 'Goloshchapov']
|
||||
|
||||
#Примечание: при чтении с помощью pickle.load() тоже есть указатель, который останавливается
|
||||
при достижении /n, так что можно просто вызвать ее два раза, чтобы записать эти два объекта.
|
||||
Если вызвать ее третий раз, будет EOFError.
|
||||
|
||||
>>> print("Файлы nums совпадают") if nums == nums1 else print("Файлы nums не совпадают")
|
||||
Файлы nums совпадают
|
||||
>>> print("Файлы group совпадают") if group == group1 else print("Файлы group не совпадают")
|
||||
Файлы group совпадают
|
||||
|
||||
>>> for i in range(125//5):
|
||||
exec('list' + str(i) + '=' + str(list(nums1[i:i+5])))
|
||||
|
||||
#Можно вызвать конкретные списки для проверки:
|
||||
>>> list1
|
||||
['34', '42', '20', '50', '45']
|
||||
>>> list6
|
||||
['9', '29', '17', '9', '51']
|
||||
|
||||
|
||||
# ОБЩЕЕ КОНТРОЛЬНОЕ ЗАДАНИЕ по Теме 5
|
||||
Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А.
|
||||
|
||||
## Задание
|
||||
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следую-щие операции:
|
||||
• Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
|
||||
• Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
|
||||
• Записывается кортеж в бинарный файл.
|
||||
• Записывается в этот же файл список и закрывается файл.
|
||||
• Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
|
||||
• Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.
|
||||
• Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде от-дельных списков со своими именами.
|
||||
|
||||
## Решение
|
||||
```
|
||||
>>> nums = tuple(str(random.randint(6, 56)) for _ in range(125))
|
||||
>>> nums
|
||||
('7', '34', '42', '20', '50', '45', '9', '29', '17', '9', '51', '51', '39', '22', '49', '34', '45', '29', '49', '48', '56', '28', '48', '47', '41', '43', '33', '44', '49', '10', '30', '6', '49', '14', '41', '18', '7', '41', '20', '42', '56', '54', '20', '40', '18', '13', '32', '40', '44', '40', '37', '39', '8', '43', '33', '40', '20', '10', '10', '39', '46', '37', '9', '52', '45', '10', '37', '18', '56', '47', '46', '20', '30', '42', '49', '43', '22', '11', '23', '30', '30', '47', '31', '43', '32', '27', '20', '24', '25', '50', '54', '15', '42', '40', '24', '27', '10', '13', '39', '27', '34', '43', '11', '44', '41', '14', '38', '21', '45', '31', '17', '48', '18', '54', '21', '38', '30', '48', '35', '32', '38', '35', '35', '56', '24')
|
||||
```
|
||||
Примечание: если итератор не надо использовать в теле цикла, принято просто обозначать его _
|
||||
```
|
||||
>>> group = ["Timoshenko", "Hodyk", "Kovalenko", "Filippov", "Goloshchapov"]
|
||||
>>> fl = open("okz.okz", "wb")
|
||||
>>> pickle.dump(nums, fl)
|
||||
>>> pickle.dump(group, fl)
|
||||
>>> fl.close()
|
||||
>>> fl = open("okz.okz", "rb")
|
||||
>>> nums1 = pickle.load(fl)
|
||||
>>> nums1
|
||||
('7', '34', '42', '20', '50', '45', '9', '29', '17', '9', '51', '51', '39', '22', '49', '34', '45', '29', '49', '48', '56', '28', '48', '47', '41', '43', '33', '44', '49', '10', '30', '6', '49', '14', '41', '18', '7', '41', '20', '42', '56', '54', '20', '40', '18', '13', '32', '40', '44', '40', '37', '39', '8', '43', '33', '40', '20', '10', '10', '39', '46', '37', '9', '52', '45', '10', '37', '18', '56', '47', '46', '20', '30', '42', '49', '43', '22', '11', '23', '30', '30', '47', '31', '43', '32', '27', '20', '24', '25', '50', '54', '15', '42', '40', '24', '27', '10', '13', '39', '27', '34', '43', '11', '44', '41', '14', '38', '21', '45', '31', '17', '48', '18', '54', '21', '38', '30', '48', '35', '32', '38', '35', '35', '56', '24')
|
||||
>>> group1 = pickle.load(fl)
|
||||
>>> group1
|
||||
['Timoshenko', 'Hodyk', 'Kovalenko', 'Filippov', 'Goloshchapov']
|
||||
```
|
||||
Примечание: при чтении с помощью pickle.load() тоже есть указатель, который останавливается
|
||||
при достижении /n, так что можно просто вызвать ее два раза, чтобы записать эти два объекта.
|
||||
Если вызвать ее третий раз, будет EOFError.
|
||||
```
|
||||
>>> print("Файлы nums совпадают") if nums == nums1 else print("Файлы nums не совпадают")
|
||||
Файлы nums совпадают
|
||||
>>> print("Файлы group совпадают") if group == group1 else print("Файлы group не совпадают")
|
||||
Файлы group совпадают
|
||||
|
||||
>>> for i in range(125//5):
|
||||
exec('list' + str(i) + '=' + str(list(nums1[i:i+5])))
|
||||
```
|
||||
Можно вызвать конкретные списки для проверки:
|
||||
```
|
||||
>>> list1
|
||||
['34', '42', '20', '50', '45']
|
||||
>>> list6
|
||||
['9', '29', '17', '9', '51']
|
||||
```
|
||||
|
||||
|
||||
Загрузка…
Ссылка в новой задаче