Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

7.6 KiB

#Отчет по теме 6

Савин Семён, А-02-23

Пункт 2.1. Эхо-вывод

>>> stroka = 'Автоматизированная система управления'
>>> stroka
'Автоматизированная система управления'

Пункт 2.2. Печать

>>> fff = 234.5; gg = 'Значение температуры = '
>>> print(gg,fff)
Значение температуры =  234.5
>>> print(gg,fff, sep = '/')
Значение температуры = /234.5
>>> print(gg,fff,sep='/', end = '***'); print('___')
Значение температуры = /234.5***___
>>> print("""Здесь может выводиться
большой текст,
анимающий несколько строк""")
Здесь может выводиться
большой текст,
анимающий несколько строк
>>> print('Здесь моет находиться',)
Здесь моет находиться
>>> print('Здесь может находиться',
      "большой текст,",
      "занимающий несколько строк")
Здесь может находиться большой текст, занимающий несколько строк

Пункт 2.3. Функция write

>>> import sys
>>> sys.stdout.write('Функция write')
Функция write13
>>> sys.stdout.write('Функция write\n')
Функция write
14

Пункт 3. Ввод с клавиатуры

>>> psw = input('Введите пароль:')
Введите пароль:12345
>>> psw
'12345'
>>> while True:
	znach = float(input('Задайте коэф. усиления = '))
	if znach < 17.5 or znach > 23.8:
		print('Ошибка')
	else:
		break

	
Задайте коэф. усиления = 50
Ошибка
Задайте коэф. усиления = 14
Ошибка
Задайте коэф. усиления = 21
>>> znach
21.0
>>> import math
>>> print(eval(input('введите выражение для расчёта = ')))
введите выражение для расчёта = math.log10(23/(1+math.exp(-3.24)))
1.34504378689765

Пункт 4.

Пункт 4.1. Модуль os, работа с путями

>>> import os
>>> os.chdir ('C:/Users/somas/python-labs/TEMA6')
>>> os.getcwd()
'C:\\Users\\somas\\python-labs\\TEMA6'
>>> savin = os.getcwd()
>>> savin
'C:\\Users\\somas\\python-labs\\TEMA6'
>>> print(savin)
C:\Users\somas\python-labs\TEMA6
>>> os.mkdir("C:/Users/somas/python-labs/TEMA6/TEST")
>>> os.listdir("C:/Users/somas/python-labs/TEMA6")
['.gitkeep', 'img1.png', 'report.md', 'TEST']
>>> os.path.isdir("C:/Users/somas/python-labs/TEMA6")
True
>>> os.path.isdir("C:/Users/somas/python-labs/TEMA")
False
>>> os.rmdir("C:/Users/somas/python-labs/TEMA6/TEST")
>>> os.listdir("C:/Users/somas/python-labs/TEMA6")
['.gitkeep', 'img1.png', 'report.md']
>>> head, tail = os.path.split(savin)
>>> print(head)
C:\Users\somas\python-labs
>>> print(tail)
TEMA6
>>> os.path.exists("U:/Blasphemous 2")
True
>>> os.path.exists("U:/NONE")
False

Скриншот созданной папки TEST

Пункт 4.2 - 4.4. Изучение процесса работы с файлом, изучение функций открытия и закрытия файла.

>>> drk = ("C:/Users/somas/python-labs/TEMA6")
>>> fp = open(file=drk+'/zapis1.txt', mode = 'w')
>>> dir(fp)
['_CHUNK_SIZE', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__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']
>>> fp1 = open('zapis2.bin', mode='wb+')
>>> fp.close()

Пункт 4.5. Запись данных в файл

>>> sps = list(range(1,13))
>>> fp2 = open('zapis3.txt', 'w')
>>> fp2.write(str(sps[:4]) + "\n")
13
>>> fp2.write(str(sps[4:8]) + "\n")
13
>>> fp2.write(str(sps[8:]) + "\n")
16
>>> fp2.close()
>>> fp3.close()
>>> 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()
>>> gh = open('zapis5.txt', 'w')
>>> for r in sps3:
	gh.write(r[0] + ' ' + str(r[1]) + '\n')

	
12
12
13
>>> gh.close()
>>> gh=open('zapis5.txt','w')
>>> for r in sps3: gh.write(r[0]+' '+str(r[1])+'\n')

Скриншот содержания файла zapis3 Скриншот содержания файла zapis4 Скриншот содержания файла zapis5

Пункт 4.6. Способ чтения данных из файла

>>> fp = open('zapis3.txt')
>>> for stroka in fp:
	stroka = stroka.rstrip('\n')
	stroka = stroka.replace('[', '')
	stroka = stroka.replace(']', '')
	sps1 = sps1+stroka.split(',')

	
>>> fp.close()
>>> sps1
['1', ' 2', ' 3', ' 4', '5', ' 6', ' 7', ' 8', '9', ' 10', ' 11', ' 12']
>>> sps
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
>>> sps2 = []
>>> for i in sps1:
	sps2.append(int(i))

	
>>> sps2
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

Пункт 4.7. Чтение данных через read

>>> fp = open('zapis3.txt')
>>> stroka1=fp.read(12)
>>> stroka2 = fp.read()
>>> fp.close()
>>> stroka1; stroka2
'[1, 2, 3, 4]'
'\n[5, 6, 7, 8]\n[9, 10, 11, 12]\n'

Пункт 4.8. Чтение данных через readline и readlines

>>> strokatest = fp.readline()
>>> strokatest
'[1, 2, 3, 4]\n'
>>> for line in fp:
	print(line.rstrip())

	
[5, 6, 7, 8]
[9, 10, 11, 12]
>>> strokatest2 = fp.readlines()
>>> strokatest2
[]
>>> fp.close()
>>> fp = open('zapis3.txt')
>>> strokatest2 = fp.readlines()
>>> strokatest2
['[1, 2, 3, 4]\n', '[5, 6, 7, 8]\n', '[9, 10, 11, 12]\n']

Пункт 4.9. Изучение модуля pickle

>>> import pickle
>>> mnoz1={'pen','book','pen','iPhone','table','book'}
>>> fp = open('zapis6.mnz', 'wb')
>>> pickle.dump(mnoz1,fp)
>>> fp.close()
>>> fp = open('zapis6.mnz', 'rb')
>>> mnoz2 = pickle.load(fp)
>>> fp.close()
>>> mnoz2
{'iPhone', 'book', 'pen', 'table'}

>>> 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
{'iPhone', 'book', 'pen', 'table'}
>>> obj2
[['Иванов И.', 1], ['Петров П.', 2], ['Сидоров С.', 3]]

Пункт 5. Перенаправление потоков ввода и вывода данных

>>> 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

Скриншот содержания файла Stroka