diff --git a/TEMA6/Stroka.txt b/TEMA6/Stroka.txt new file mode 100644 index 0000000..48d3f7e --- /dev/null +++ b/TEMA6/Stroka.txt @@ -0,0 +1 @@ +ηΰοθρό ρςπξκθ β τΰιλ diff --git a/TEMA6/bin.mnz b/TEMA6/bin.mnz new file mode 100644 index 0000000..d1d0ad4 Binary files /dev/null and b/TEMA6/bin.mnz differ diff --git a/TEMA6/report.md b/TEMA6/report.md new file mode 100644 index 0000000..6bbf9e8 --- /dev/null +++ b/TEMA6/report.md @@ -0,0 +1,495 @@ +# ΠžΡ‚Ρ‡Ρ‘Ρ‚ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ 6 +Π—Π΅Π»Π΅Π½ΠΊΠΈΠ½Π° ΠšΠ°Ρ‚Π΅Ρ€ΠΈΠ½Π° ΠœΠΈΡ…Π°ΠΉΠ»ΠΎΠ²Π½Π°, А-02-23 + +## ΠŸΡƒΠ½ΠΊΡ‚ 1.Запуск ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ IDLE +## ΠŸΡƒΠ½ΠΊΡ‚ 2. Π’Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° экран дисплСя +### 2.1. Π’Ρ‹Π²ΠΎΠ΄ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС. +CΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ любого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ простым ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ Π΅Π³ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС (ΠΊΠ°ΠΊ это ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· дСлалось Ρ€Π°Π½ΡŒΡˆΠ΅), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: +```py +>>> stroka='Автоматизированная систСма управлСния' +>>> stroka +'Автоматизированная систСма управлСния' +``` +Π­Ρ‚ΠΎΡ‚ способ называСтся __«эхо-Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌΒ»__ + +### 2.2. Ѐункция print +Π­Ρ‚ΠΎΡ‚ способ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, ΠΈ Π² функциях +```py +>>> fff=234.5;gg='Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ = ' +>>> print(gg, fff) +Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ = 234.5 +``` +МоТно вывСсти нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π·Π° ΠΎΠ΄Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. + +По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ. Если Π½ΡƒΠΆΠ΅Π½ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π΅ sep, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: + +```py +>>> print(gg, fff, sep='/') +Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ = /234.5 +``` +ПослС Π²Ρ‹Π²ΠΎΠ΄Π° автоматичСски осущСствляСтся ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ строку. Если курсор Π½Π°Π΄ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ строкС, Ρ‚ΠΎ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: +```py +>>> print(gg, fff,sep='/',end='***'); print('____') +Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ = /234.5***____ +``` + +ПослС end= Π½Π°Π΄ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠΌΠΈ символами Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒΡΡ выводимая строка ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку. Наоборот, Ссли Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ трСбуСтся просто ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: +```py +print() + +``` + +ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строках с использованиСм Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ: +```py +#1-ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ +>>> print(""" Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ +... большой тСкст, +... Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ нСсколько строк""") + + Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ +большой тСкст, +Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ нСсколько строк + +#2-ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ +>>> print("Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ", +... "большой тСкст,", +... "Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ нСсколько строк") + +Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ большой тСкст, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ нСсколько строк +``` +Π’Ρ‹Π²ΠΎΠ΄: Π’ΠΎ 1-ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ тСкст выводится Π² Ρ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ строки ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, благодаря Ρ‚Ρ€ΠΎΠΈΠ½Ρ‹ΠΌ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°ΠΌ + + +### 2.3. Π’Ρ‹Π²ΠΎΠ΄ с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° write ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° sys.stdou. +ΠžΠ±ΡŠΠ΅ΠΊΡ‚ stdout прСдставляСт собой ΠΏΠΎΡ‚ΠΎΠΊ стандартного Π²Ρ‹Π²ΠΎΠ΄Π° – ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹-водят символьноС прСдставлСниС Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ находится Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ __sys__ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Π΄ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ: + +```py +>>> import sys +>>> sys.stdout.write('Ѐункция write') +Ѐункция write13 +``` +Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ послС Π²Ρ‹Π²ΠΎΠ΄Π° строки Π½Π΅ осущСствляСт ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку. Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΊΠΎΠ½Ρ†Π΅ строки ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько символов β€œ\n”: + +```py +>>> sys.stdout.write('Ѐункция write\n') +Ѐункция write +14 +``` + +## ΠŸΡƒΠ½ΠΊΡ‚ 3. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. +Для Π²Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π·Π½Π°ΠΊΠΎΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ input. НапримСр: + +```py +>>> psw=input('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ:') +Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ:12345 +>>> psw +'12345' +>>> type(psw) + +``` + +### ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1. Π’Π²ΠΎΠ΄ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ значСния. +ΠŸΡƒΡΡ‚ΡŒ вводится число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π΅ Π·Π½Π°Ρ‡Π΅-Π½ΠΈΠΉ ΠΎΡ‚ 17.5 Π΄ΠΎ 23.8. +```py +>>> while True: +... znach=float(input('Π—Π°Π΄Π°ΠΉΡ‚Π΅ коэф.усилСния = ')) +... if znach<17.5 or znach>23.8: +... print('Ошибка!') +... else: +... break + + +Π—Π°Π΄Π°ΠΉΡ‚Π΅ коэф.усилСния = 15.4 +Ошибка! +Π—Π°Π΄Π°ΠΉΡ‚Π΅ коэф.усилСния = 21.6 +``` + +### ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2. Π’Π²ΠΎΠ΄ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° выраТСния, ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰Π΅Π³ΠΎ расчСту. + +```py +>>> import math +>>> print(eval(input('Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для расчСта = '))) +Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для расчСта = math.log10(23/(1+math.exp(-3.24))) +1.34504378689765 +``` + +## ΠŸΡƒΠ½ΠΊΡ‚ 4. Π’Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. +Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ указания источника Π΄Π°Π½Π½Ρ‹Ρ… - ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π° с ΠΏΡƒΡ‚Π΅ΠΌ доступа ΠΊ Π΅Π³ΠΎ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ. + +### 4.1. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡƒΡ‚Π΅ΠΌ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ. +Π­Ρ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ собраны Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ os. Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ установлСн Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ os.getcwd (cwd = current working directory). + +```py +>>> import os +>>> os.getcwd() +'C:\\Users\\user\\python-labs\\TEMA6' +``` +Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΠΌ этот ΠΏΡƒΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ZelenkinaK ΠΈ Π²Ρ‹Π²Π΅Π΄ΠΈΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β«printΒ» +```py +ZelenkinaK=os.getcwd() +print(ZelenkinaK) +C:\Users\user\python-labs\TEMA6 +``` + +Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ располоТСниС Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ²ΡˆΠ΅ΠΉΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.chdir__ +```py +os.chdir(r'C:\Users\user\python-labs\TEMA1') +os.getcwd() +'C:\\Users\\user\\python-labs\\TEMA1' +``` + +Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ· модуля os: __mkdir__, __rmdir__, __listdir__ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ __isdir__ ΠΈΠ· Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π² os модуля os.path. + +```py +>>> import os +>>> from os.path import isdir +# mkdir - создаёт ΠΏΠ°ΠΏΠΊΡƒ +>>> os.mkdir("БСкрСтная_ΠΏΠ°ΠΏΠΊΠ°") + +# isdir - провСряСт Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠ°ΠΏΠΊΠΈ +>>> print(isdir("БСкрСтная_ΠΏΠ°ΠΏΠΊΠ°")) +True + +# listdir - просматриваСт содСрТимоС Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ +>>> print(os.listdir()) +['.gitkeep', 'report.md', 'БСкрСтная_ΠΏΠ°ΠΏΠΊΠ°'] + +# rmdit - удаляСт ΠΏΡƒΡΡ‚ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ +>>> os.rmdir("БСкрСтная_ΠΏΠ°ΠΏΠΊΠ°") +>>> print(isdir("БСкрСтная_ΠΏΠ°ΠΏΠΊΠ°")) +False +``` + +ΠŸΡƒΡΡ‚ΡŒ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ находится Ρ„Π°ΠΉΠ» report.md. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.path.abspath__ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½ΡƒΡŽ строку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ имя Ρ„Π°ΠΉΠ»Π° вмСстС с ΠΏΠΎΠ»Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ доступа ΠΊ Π½Π΅ΠΌΡƒ: +```py +>>> fil=os.path.abspath("report.md") +>>> print(fil) +C:\Users\user\python-labs\TEMA6\report.md +``` + +Π’Ρ‹Π΄Π΅Π»ΠΈΠΌ ΠΏΡƒΡ‚ΡŒ доступа ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΈΠ· строки, содСрТащСй ΠΈ этот ΠΏΡƒΡ‚ΡŒ, ΠΈ имя Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.path.dirname__: +```py +>>> drkt=os.path.dirname(fil) +>>> print(drkt) +C:\Users\user\python-labs\TEMA6 +``` + +Наоборот, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ имя Ρ„Π°ΠΉΠ»Π° ΠΈΠ· этой строки с отбрасываниСм ΠΏΡƒΡ‚ΠΈ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.path.basename__. +```py +>>> file1 = os.path.basename(fil) +>>> print(file1) +report.md +``` + +Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ __os.path.split__ (Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (ΠΏΡƒΡ‚ΡŒ, имя_Ρ„Π°ΠΉΠ»Π°)): +```py +>>> file2 = os.path.split(fil); print(file2) +('C:\\Users\\user\\python-labs\\TEMA6', 'report.md') +``` + +Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.path.exists__ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ сущСствуСт Π»ΠΈ ΠΏΡƒΡ‚ΡŒ: + +```py +>>> os.path.exists(r'C:\Users\user\python-labs\TEMA6') +True +>>> os.path.exists(r'C:\\Users\\user\\python-labs\\Π”ΠΎΠΌ') +False +>>> os.path.exists('file') +False +``` + +ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° с извСстным располоТСниСм с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __os.path.isfile__, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ символьная строка с ΠΏΡƒΡ‚Π΅ΠΌ ΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Π°: +```py +>>> a=os.path.isfile(r'C:\Users\user\python-labs\TEMA6\report.md') +>>> print(a) +True +``` + +###4.2. ΠžΠ±Ρ‰Π°Ρ схСма Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»ΠΎΠΌ. +Для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с Ρ„Π°ΠΉΠ»ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: +1. ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ Ρ†Π΅Π»ΠΈ (Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, запись, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…); +2. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с Ρ„Π°ΠΉΠ»ΠΎΠΌ; +3. Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°. + +## ΠŸΡƒΠ½ΠΊΡ‚ 4.3. Ѐункция __open__ +Ѐункция __open__ - ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° для записи ΠΈΠ»ΠΈ чтСния Π΄Π°Π½Π½Ρ‹Ρ…. +Запросим ΠΏΠΎΠΌΠΎΡ‰ΡŒ: +```py +>>> help(open) + +Help on built-in function open in module _io: + +open( + file, + mode='r', + buffering=-1, + encoding=None, + errors=None, + newline=None, + closefd=True, + opener=None +) + Open file and return a stream. Raise OSError upon failure. +... + It is also possible to use a string or bytearray as a file for both + reading and writing. For strings StringIO can be used like a file + opened in a text mode, and for bytes a BytesIO can be used like a file + opened in a binary mode. +``` + +ΠŸΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя Ρ„Π°ΠΉΠ»Ρ‹ (с ΠΏΡƒΡ‚Π΅ΠΌ, Ссли ΠΎΠ½ Π½Π΅ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅) ΠΈ Ρ†Π΅Π»ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌ. Для открытия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция open. + +```py +fp=open(file=drkt+'\\zapis1.txt',mode='w') +``` + +Π‘ΠΎΠ»Π΅Π΅ короткая запись (Π±Π΅Π· ΠΈΠΌΠ΅Π½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²): +```py +fp=open(drkt+'\\zapis1.txt','w') +``` +Если ΠΏΡƒΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ drkt совпадаСт с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠΌ, Ρ‚ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ, оставив Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°: +```py +fp=open('zapis1.txt','w') +``` + +ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΠΌ Ρ‚ΠΈΠΏ ΠΈ список Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ²: +```py +>>> print(type(fp)) + + +>>> dir(fp) + +['_CHUNK_SIZE', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWritable', '_finalizing', 'buffer', 'close', 'closed', 'detach', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'line_buffering', 'mode', 'name', 'newlines', 'read', 'readable', 'readline', 'readlines', 'reconfigure', 'seek', 'seekable', 'tell', 'truncate', 'writable', 'write', 'write_through', 'writelines'] +``` + +## ΠŸΡƒΠ½ΠΊΡ‚ 4.4. Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°. +Π‘Ρ€Π°Π·Ρƒ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»ΠΎΠΌ Π΅Π³ΠΎ слСдуСт Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ для обСспСчСния сохранности Π΅Π³ΠΎ содСрТимого с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° close, примСняСмого ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ – Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. +```py +fp.close() + + +``` +### 4.5. Π—Π°ΠΏΠΈΡΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ„Π°ΠΉΠ» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° write. + +ΠœΠ΅Ρ‚ΠΎΠ΄ __write__ относится ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ – Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. + +ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ список с элСмСнтами-числами ΠΎΡ‚ 1 Π΄ΠΎ 12 ΠΈ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΈΡ… Π² Ρ„Π°ΠΉΠ» ΠΏΠΎ 4 числа Π½Π° строкС: +```py +>>> sps=list(range(1,13)) +>>> fp2=open('zapis3.txt','w') +>>> fp2.write(str(sps[:4])+'\n') +13 +>>> fp2.write(str(sps[:4])+'\n') +13 +>>> fp2.write(str(sps[8:])+'\n') +16 +>>> fp2.close() +``` + +Π’ Ρ„Π°ΠΉΠ»Π΅ появилась запись: +```py +[1, 2, 3, 4] +[1, 2, 3, 4] +[9, 10, 11, 12] +``` + +ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2. +```py +>>>sps3=[['Иванов И.',1],['ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² П.',2],['Π‘ΠΈΠ΄ΠΎΡ€ΠΎΠ² Π‘.',3]] +>>> fp3=open('zapis4.txt','w') +>>> for i in range(len(sps3)): +... stroka4=sps3[i][0]+' '+str(sps3[i][1]) +... fp3.write(stroka4) + + +11 +11 +12 +>>> fp3.close() +``` + +Π’ Ρ„Π°ΠΉΠ»Π΅ появилась запись: + +[!Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ Ρ„Π°ΠΉΠ»Π° zapis4](Π€ΠΎΡ‚ΠΎ1) + +ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ: +```py +>>> gh=open('zapis5.txt','w') +>>> for r in sps3: +... gh.write(r[0]+' '+str(r[1])+'\n') + + +12 +12 +13 +>>> gh.close() +``` + +ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ этот Ρ†ΠΈΠΊΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΉ строкой: +```py + for r in sps3: gh.write(r[0]+' '+str(r[1])+'\n') +``` + +### 4.6. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ чтСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· тСкстового Ρ„Π°ΠΉΠ»Π°. +ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· Ρ€Π°Π½Π΅Π΅ созданного Ρ„Π°ΠΉΠ»Π° zapis3.txt. +```py +>>> sps1=[] +>>> fp=open('zapis3.txt') +>>> for stroka in fp: +... stroka=stroka.rstrip('\n') +... stroka=stroka.replace('[','') +... stroka=stroka.replace(']','') +... sps1=sps1+stroka.split(',') + + +>>> fp.close() +>>> print(sps1) +['1', ' 2', ' 3', ' 4', '1', ' 2', ' 3', ' 4', '9', ' 10', ' 11', ' 12'] +``` +ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ открытия Ρ„Π°ΠΉΠ»Π° использован Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ – со значСниями Β«ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΒ». +Π—Π΄Π΅ΡΡŒ, ΠΏΠ΅Ρ€Π΅Π΄ занСсСниСм строки Π² список с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° __rstrip__, ΠΈΠ· Π½Π΅Ρ‘ удаляСтся символ ΠΊΠΎΠ½Ρ†Π° строки, Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° __replace__ – скобки. + +__ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ:__ Π”Π°Π½Π½Ρ‹Π΅ Π² sps1 прСдставлСны Π² Π²ΠΈΠ΄Π΅ строк, Π° Π² zapis3.txt β€” Π² Π²ΠΈΠ΄Π΅ Ρ†Π΅Π»Ρ‹Ρ… чисСл. +ΠŸΠΎΠ΄ΡƒΠΌΠ°Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ список, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, совпал с исходным: + +```py +>>>sps=[] +>>> for i in sps1: +... sps.append(int(i)) + +>>> sps +[1, 2, 3, 4, 1, 2, 3, 4, 9, 10, 11, 12] +``` + +### 4.7. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° read. +ΠœΠ΅Ρ‚ΠΎΠ΄ __read__, ΠΊΠ°ΠΊ ΠΈ __write__, относится ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ – Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. +ΠœΠ΅Ρ‚ΠΎΠ΄ read() Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° (тСкстового ΠΈΠ»ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку ΠΈΠ»ΠΈ Π±Π°ΠΉΡ‚ΠΎΠ²ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. + +```py +>>> fp=open('zapis3.txt') +>>> stroka1=fp.read(12) +>>> stroka2=fp.read() +>>> fp.close() +>>> stroka1 +'[1, 2, 3, 4]' +>>> stroka2 +'\n[1, 2, 3, 4]\n[9, 10, 11, 12]\n' +``` + +### 4.8. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² readline ΠΈ readlines. +Π­Ρ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, начиная с Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ полоТСния ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π°, соотвСтствСн-Π½ΠΎ, ΠΎΠ΄Π½Ρƒ строку символов (ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚) ΠΈΠ»ΠΈ всС строки (всС Π±Π°ΠΉΡ‚Ρ‹). + +__readline()__ - функция, которая Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ строку ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. +```py +>>> fp=open('zapis3.txt') +>>> s1=fp.readline(); s1 +[1, 2, 3, 4] + +>>> s2 = fp.readline(); s2 +'[1, 2, 3, 4]\n' + +>>> s3=fp.readline();s3 +'[9, 10, 11, 12]\n' + +>>> fp.close() +``` +__readlines()__ - функция, которая Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ всС строки, возвращая ΠΈΡ… Π² Π²ΠΈΠ΄Π΅ списка + +```py +>>> fp=open('zapis3.txt') +>>> s4=fp.readlines(); s4 +['[1, 2, 3, 4]\n', '[1, 2, 3, 4]\n', '[9, 10, 11, 12]\n'] +``` + +### 4.9. Π’Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ· модуля pickle. +Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ __pickle__ содСрТатся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ послСдо-Π²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти. +```py +>>> import pickle +>>> mnoz1={'pen','book','pen','iPhone','table','book'} +>>> fp=open('zapis6.mnz','wb') +>>> pickle.dump(mnoz1,fp) +>>> fp.close() +``` +Π’ Ρ„Π°ΠΉΠ»Π΅ появилась запись: +[!Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ Ρ„Π°ΠΉΠ»Π° запись6] (Π€ΠΎΡ‚ΠΎ3) + +Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ mnoz2: +```py +>>> fp=open('zapis6.mnz','rb') +>>> mnoz2=pickle.load(fp) +>>> fp.close() +>>> mnoz2 +{'iPhone', 'table', 'pen', 'book'} +``` +Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠ΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: mnoz1 ΠΈ mnoz2 Π½Π° совпадСниС. +```py +mnoz1==mnoz2 +True +``` +Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ отличаСтся ΠΎΡ‚ Π²Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ мноТСства mnoz1 ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ мноТСство автоматичСски ΡƒΠ΄Π°Π»ΠΈΠ»ΠΎ всС ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ слова ΠΈ ΠΌΠΎΠ³Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… порядок + +А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ с использованиСм Ρ‚Π΅Ρ… ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π² Ρ„Π°ΠΉΠ», Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ€Π°Π·-Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²: Ρ‚ΠΎ ΠΆΠ΅ мноТСство mnoz1 ΠΈ Ρ€Π°Π½Π΅Π΅ созданный список sps3. ΠŸΡ€ΠΈ считывании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΠ·-Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ Π² Π½Π΅Π³ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Π»ΠΈΡΡŒ. +```py +>>> fp=open('zapis7.2ob','wb') +>>> pickle.dump(mnoz1,fp) +>>> pickle.dump(sps3,fp) +>>> fp.close() +>>> fp=open('zapis7.2ob','rb') +>>> obj1=pickle.load(fp) +>>> obj2=pickle.load(fp) +>>> fp.close() + +>>> obj1; mnoz1 +{'iPhone', 'table', 'pen', 'book'} +{'iPhone', 'table', 'pen', 'book'} +>>> obj2; sps3 +[['Иванов И.', 1], ['ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² П.', 2], ['Π‘ΠΈΠ΄ΠΎΡ€ΠΎΠ² Π‘.', 3]] +[['Иванов И.', 1], ['ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² П.', 2], ['Π‘ΠΈΠ΄ΠΎΡ€ΠΎΠ² Π‘.', 3]] +``` + +## ΠŸΡƒΠ½ΠΊΡ‚ 5. ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…. +ΠŸΡ€ΠΎΠ΄Π΅Π»Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: +```py +>>>import sys +>>>vr_out=sys.stdout #Π—Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π²Ρ‹Π²ΠΎΠ΄Π° +>>>fc=open('Stroka.txt','w') #ΠžΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Ρ„Π°ΠΉΠ» Π²Ρ‹Π²ΠΎΠ΄Π° +>>>sys.stdout=fc #ΠŸΠ΅Ρ€Π΅Π½Π°Ρ†Π΅Π»ΠΈΠ²Π°Π΅ΠΌ стандартный ΠΏΠΎΡ‚ΠΎΠΊ Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° Ρ„Π°ΠΉΠ» +>>>print('запись строки Π² Ρ„Π°ΠΉΠ»') #Π’Ρ‹Π²ΠΎΠ΄ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Π½Π° экран, Π° Π² Ρ„Π°ΠΉΠ» +>>>sys.stdout=vr_out #ВосстановлСниС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° +>>>print('запись строки Π½Π° экран') #УбСТдаСмся, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран восстановился +запись строки Π½Π° экран +>>>fc.close() +``` + +Π’ Ρ„Π°ΠΉΠ»Π΅: +[!Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ Ρ„Π°ΠΉΠ»Π°] (Π€ΠΎΡ‚ΠΎ4) + +Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊ Π²Π²ΠΎΠ΄Π° – sys.stdin – вмСсто ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ – ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. +```py +>>> import sys +>>> vr_out=sys.stdout #Π—Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π²Ρ‹Π²ΠΎΠ΄Π° +>>> fc=open('Stroka.txt','w') #ΠžΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Ρ„Π°ΠΉΠ» Π²Ρ‹Π²ΠΎΠ΄Π° +>>> sys.stdout=fc #ΠŸΠ΅Ρ€Π΅Π½Π°Ρ†Π΅Π»ΠΈΠ²Π°Π΅ΠΌ стандартный ΠΏΠΎΡ‚ΠΎΠΊ Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° Ρ„Π°ΠΉΠ» +>>> print('запись строки Π² Ρ„Π°ΠΉΠ»') #Π’Ρ‹Π²ΠΎΠ΄ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Π½Π° экран, Π° Π² Ρ„Π°ΠΉΠ» +>>> sys.stdout=vr_out #ВосстановлСниС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° +>>> print('запись строки Π½Π° экран') #УбСТдаСмся, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ Π½Π° экран восстановился +запись строки Π½Π° экран +>>> fc.close() +>>> tmp_in = sys.stdin #Π—Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π²Π²ΠΎΠ΄Π° +>>> fd = open("Stroka.txt", "r") #ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» для Π²Π²ΠΎΠ΄Π° (чтСния) +>>> sys.stdin = fd #ΠŸΠ΅Ρ€Π΅Π½Π°Ρ†Π΅Π»ΠΈΠ²Π°Π΅ΠΌ Π²Π²ΠΎΠ΄ Π½Π° Ρ„Π°ΠΉΠ» вмСсто ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ +>>> sys.stdin +<_io.TextIOWrapper name='Stroka.txt' mode='r' encoding='cp1251'> +>>> while True: +... try: +... line = input () #Π‘Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π΅ΠΌ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° строку +... print(line) # ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ считанноС +... except EOFError: +... break + +запись строки Π² Ρ„Π°ΠΉΠ» +>>> fd.close() +>>> sys.stdin=tmp_in #НС Π·Π°Π±Ρ‹Ρ‚ΡŒ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ стандартноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΏΠΎΡ‚ΠΎΠΊΠ° Π²Π²ΠΎΠ΄Π° +``` + +## ΠŸΡƒΠ½ΠΊΡ‚ 6. Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ сСанса diff --git a/TEMA6/task.md b/TEMA6/task.md new file mode 100644 index 0000000..5202c61 --- /dev/null +++ b/TEMA6/task.md @@ -0,0 +1,63 @@ +# ΠžΠ±Ρ‰Π΅Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ + +Π—Π΅Π»Π΅Π½ΠΊΠΈΠ½Π° ΠšΠ°Ρ‚Π΅Ρ€ΠΈΠ½Π°, А-02-23 + +## Π—Π°Π΄Π°Π½ΠΈΠ΅ +ΠŸΡ€ΠΈΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ инструкции ΠΈ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΈΡ… Π² Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .py , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: +1. Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΊΠΎΡ€Ρ‚Π΅ΠΆ со 125 Ρ†Π΅Π»Ρ‹ΠΌΠΈ случайными числами ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ‚ 6 Π΄ΠΎ 56, прСдставлСнными Π² Π²ΠΈΠ΄Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… строк. +2. Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-список с вашСй Ρ„Π°ΠΌΠΈΠ»ΠΈΠ΅ΠΉ ΠΈ 4 фамилиями Π²Π°ΡˆΠΈΡ… одноклассников. +3. ЗаписываСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». +4. ЗаписываСтся Π² этот ΠΆΠ΅ Ρ„Π°ΠΉΠ» список ΠΈ закрываСтся Ρ„Π°ΠΉΠ». +5. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ΡΡ этот Ρ„Π°ΠΉΠ» для чтСния ΠΈ считываСт ΠΈΠ· Π½Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π² 2 Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. +6. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚ΡΡ Π½Π° совпадСниС Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с исходными ΠΈ выводится ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ со-ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅. +7. РаздСляСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π° совокупности ΠΏΠΎ 5 чисСл Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈ ΠΎΠ½ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚-Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… списков со своими ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ. +  +## РСшСниС +```py +# Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΊΠΎΡ€Ρ‚Π΅ΠΆ со 125 Ρ†Π΅Π»Ρ‹ΠΌΠΈ случайными числами ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ‚ 6 Π΄ΠΎ 56, прСдставлСнными Π² Π²ΠΈΠ΄Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… строк. +import random +n = list(range(1, 126, 1)) +print(n) +tup = () +for i in n: + tup = tuple(tup + (random.randint(6, 56),)) +str_tup = tuple(map(str, tup)) +print(str_tup) + +# Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-список с вашСй Ρ„Π°ΠΌΠΈΠ»ΠΈΠ΅ΠΉ ΠΈ 4 фамилиями Π²Π°ΡˆΠΈΡ… одноклассни +surname = ["ΠšΡ€ΠΈΠ²ΠΈ", "ΠšΠΈΡ€Π΅Π΅Π²", "ΠšΠ°ΠΏΠΈΡ‚ΠΎΠ½ΠΎΠ²", "Π•Ρ„Ρ€Π΅ΠΌΠΎΠ²", "Π”ΠΎΠ±Ρ€ΠΎΠ²ΠΎΠ»ΡŒΡΠΊΠ°"] +print("Бписок Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ:", surname) + + +# Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». +import os +import pickle +os.chdir(r"C:\Users\user\python-labs\TEMA6") +a = open('bin.mnz', 'wb') +pickle.dump(str_tup, a) + +# ЗаписываСтся Π² этот ΠΆΠ΅ Ρ„Π°ΠΉΠ» список ΠΈ закрываСтся Ρ„Π°ΠΉΠ». +pickle.dump(surname, a) +a.close() + +# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ΡΡ этот Ρ„Π°ΠΉΠ» для чтСния ΠΈ считываСт ΠΈΠ· Π½Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π² 2 Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. +a = open('bin.mnz', 'rb') +obj1 = pickle.load(a) +obj2_spis = pickle.load(a) +a.close() +print("ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:", obj1) +print("ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ список:", obj2_spis) + +# ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚ΡΡ Π½Π° совпадСниС Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с исходными ΠΈ выводится ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ со-ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅. +if obj1 == str_tup and obj2_spis == surname: + print("ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с исходными!") +else: + print("ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с исходными!") + +# РаздСляСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π° совокупности ΠΏΠΎ 5 чисСл Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈ ΠΎΠ½ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… списков со своими ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ. +l = [] +for i in range(0, 125, 5): + l.append(list(str_tup[i:i + 5])) +for i in range(25): + print(f"list{i + 1} = {l[i]}") +``` \ No newline at end of file diff --git a/TEMA6/task.py b/TEMA6/task.py new file mode 100644 index 0000000..bc71558 --- /dev/null +++ b/TEMA6/task.py @@ -0,0 +1,46 @@ +# Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΊΠΎΡ€Ρ‚Π΅ΠΆ со 125 Ρ†Π΅Π»Ρ‹ΠΌΠΈ случайными числами ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ‚ 6 Π΄ΠΎ 56, прСдставлСнными Π² Π²ΠΈΠ΄Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… строк. +import random +n = list(range(1, 126, 1)) +print(n) +tup = () +for i in n: + tup = tuple(tup + (random.randint(6, 56),)) +str_tup = tuple(map(str, tup)) +print(str_tup) + +# Боздаётся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-список с вашСй Ρ„Π°ΠΌΠΈΠ»ΠΈΠ΅ΠΉ ΠΈ 4 фамилиями Π²Π°ΡˆΠΈΡ… одноклассни +surname = ["ΠšΡ€ΠΈΠ²ΠΈ", "ΠšΠΈΡ€Π΅Π΅Π²", "ΠšΠ°ΠΏΠΈΡ‚ΠΎΠ½ΠΎΠ²", "Π•Ρ„Ρ€Π΅ΠΌΠΎΠ²", "Π”ΠΎΠ±Ρ€ΠΎΠ²ΠΎΠ»ΡŒΡΠΊΠ°"] +print("Бписок Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ:", surname) + + +# Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». +import os +import pickle +os.chdir(r"C:\Users\user\python-labs\TEMA6") +a = open('bin.mnz', 'wb') +pickle.dump(str_tup, a) + +# ЗаписываСтся Π² этот ΠΆΠ΅ Ρ„Π°ΠΉΠ» список ΠΈ закрываСтся Ρ„Π°ΠΉΠ». +pickle.dump(surname, a) +a.close() + +# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ΡΡ этот Ρ„Π°ΠΉΠ» для чтСния ΠΈ считываСт ΠΈΠ· Π½Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π² 2 Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. +a = open('bin.mnz', 'rb') +obj1 = pickle.load(a) +obj2_spis = pickle.load(a) +a.close() +print("ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ:", obj1) +print("ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ список:", obj2_spis) + +# ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚ΡΡ Π½Π° совпадСниС Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с исходными ΠΈ выводится ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ со-ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅. +if obj1 == str_tup and obj2_spis == surname: + print("ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с исходными!") +else: + print("ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с исходными!") + +# РаздСляСтся ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π½Π° совокупности ΠΏΠΎ 5 чисСл Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈ ΠΎΠ½ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… списков со своими ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ. +l = [] +for i in range(0, 125, 5): + l.append(list(str_tup[i:i + 5])) +for i in range(25): + print(f"list{i + 1} = {l[i]}") diff --git a/TEMA6/zapis1.txt b/TEMA6/zapis1.txt new file mode 100644 index 0000000..e69de29 diff --git a/TEMA6/zapis3.txt b/TEMA6/zapis3.txt new file mode 100644 index 0000000..c67c42b --- /dev/null +++ b/TEMA6/zapis3.txt @@ -0,0 +1,3 @@ +[1, 2, 3, 4] +[1, 2, 3, 4] +[9, 10, 11, 12] diff --git a/TEMA6/zapis4.txt b/TEMA6/zapis4.txt new file mode 100644 index 0000000..edd0c45 --- /dev/null +++ b/TEMA6/zapis4.txt @@ -0,0 +1 @@ +Θβΰνξβ Θ. 1Οεςπξβ Ο. 2Ρθδξπξβ Ρ. 3 \ No newline at end of file diff --git a/TEMA6/zapis5.txt b/TEMA6/zapis5.txt new file mode 100644 index 0000000..ecde2d7 --- /dev/null +++ b/TEMA6/zapis5.txt @@ -0,0 +1,3 @@ +Θβΰνξβ Θ. 1 +Οεςπξβ Ο. 2 +Ρθδξπξβ Ρ. 3 diff --git a/TEMA6/zapis6.mnz b/TEMA6/zapis6.mnz new file mode 100644 index 0000000..4aeaa61 Binary files /dev/null and b/TEMA6/zapis6.mnz differ diff --git a/TEMA6/zapis7.2ob b/TEMA6/zapis7.2ob new file mode 100644 index 0000000..eac54ad Binary files /dev/null and b/TEMA6/zapis7.2ob differ diff --git a/TEMA6/Π€ΠΎΡ‚ΠΎ1.png b/TEMA6/Π€ΠΎΡ‚ΠΎ1.png new file mode 100644 index 0000000..5499b92 Binary files /dev/null and b/TEMA6/Π€ΠΎΡ‚ΠΎ1.png differ diff --git a/TEMA6/Π€ΠΎΡ‚ΠΎ2.png b/TEMA6/Π€ΠΎΡ‚ΠΎ2.png new file mode 100644 index 0000000..a0c6614 Binary files /dev/null and b/TEMA6/Π€ΠΎΡ‚ΠΎ2.png differ diff --git a/TEMA6/Π€ΠΎΡ‚ΠΎ3.png b/TEMA6/Π€ΠΎΡ‚ΠΎ3.png new file mode 100644 index 0000000..51ba2a7 Binary files /dev/null and b/TEMA6/Π€ΠΎΡ‚ΠΎ3.png differ diff --git a/TEMA6/Π€ΠΎΡ‚ΠΎ4.png b/TEMA6/Π€ΠΎΡ‚ΠΎ4.png new file mode 100644 index 0000000..a3a7328 Binary files /dev/null and b/TEMA6/Π€ΠΎΡ‚ΠΎ4.png differ