Сравнить коммиты

..

Ничего общего в коммитах. '0b2f1262662a91604eec88a699e19663322e3fb3' и 'd134f5108b388153264714ed96b382c2e198bb23' имеют совершенно разные истории.

@ -26,45 +26,33 @@
>>>fff=234.5;gg='Значение температуры = '
>>>print(gg, fff) #Можно вывести несколько объектов за одно обращение к функции
Значение температуры = 234.5
По умолчанию выводимые объекты разделяются одним пробелом. Если нужен другой разделитель его можно указать в отдельном аргументе sep:
>>>print(gg, fff, sep="\n")
Значение температуры =
234.5
После вывода автоматически осуществляется переход на другую строку. Если курсор надо оставить в той же строке, то следует использовать еще один аргумент:
>>>print(gg, fff,sep='\n',end='***'); print('____')
Значение температуры =
234.5***____
После end= надо указать какими символами должна закончиться выводимая строка или указать пустую строку. Если в какой-то момент требуется просто перейти на новую строку, можно использовать следующее обращение к функции:
>>>print()
Оператор вывода может располагаться на нескольких строках с использованием тройных кавычек:
>>>print(""" Здесь может выводиться
большой текст,
занимающий несколько строк""") #В этом варианте текст выводится в три отдельные строки как и при вводе команды, благодаря тройным кавычкам.
занимающий несколько строк""") #В этом варианте текст выводится в три отдельные строки как и при вводе команды, благодаря троиным кавычкам.
Здесь может выводиться
большой текст,
занимающий несколько строк
>>>print("Здесь может выводиться",
"большой текст,",
"занимающий несколько строк") #В данном случае текст выводится подрят в одну строку.
"большой текст,",
"занимающий несколько строк") #В данном случае текст выводится подрят в одну строку.
Здесь может выводиться большой текст, занимающий несколько строк
Разница в двух случаях состоит в том, что в первом случае тройные кавычки воспроизводят текст ровно так, как он был введен. Во втором случае три выводимых объекта-строки перечислены через запятую и выведены как три объекта, разделённые пробелом.
# 2.3 Изучение вывода данных с помощью функции write
Был импортирован модуль sys, и использована функция write, которая записывает и выводит текст, а так же возвращается количество байтов, записанных в строку.
Был испортирован модуль sys, и использована функция write, которая записывает и выводит текст, а так же возвращается количество байтов, записанных в строку.
>>> import sys
>>> sys.stdout.write('Функция write')
@ -79,7 +67,15 @@
Так же был создан цикл, который просит пользователя ввести значение до тех пор, пока оно не будет удовлетворять определенному интервалу, а потом выводит это значение на дисплей.
Также с помощью функции eval Была создана команда, благодаря которой выражение, введенное пользователем с консоли исполняется, и выдается результат расчета.
Также с помощью функции eval Была создана команда, благодаря которой выражение, введенное пользователен с консоли исполняется, и выдается результат расчета.
>>> import sys
>>> sys.stdout.write('Функция write')
Функция write13
>>> sys.stdout.write('Функция write\n')
Функция write
14
>>> psw=input('Введите пароль:')
Введите пароль:398fhg
@ -88,7 +84,6 @@
>>> type(psw)
<class 'str'>
input() всегда возвращает строку. Если нужна не строка, то input надо поместить внутрь функции, изменяющей тип данных.
>>> while True:
... znach=float(input('Задайте коэф.усиления = '))
@ -110,8 +105,6 @@ input() всегда возвращает строку. Если нужна не
введите выражение для расчета = math.log10(23/(1+math.exp(-3.24)))
1.34504378689765
Введенная строка преобразуется в исполнительные инструкции с помощью eval(), далее они выполняются и результат выводится на экран. Строка имеет тип, соответствующий результату вычислений. В данном случае - float.
# 4 Изучение различных способов чтения данных из файла и записи в файл
Были изучены и применены разные способы чтения и записи данных.
@ -152,31 +145,20 @@ path.isdir - возвращает true, если папка является с
>>> os.path.isdir("new_folder")
False
Функция преобразования пути, переданного в качестве аргумента, в абсолютный путь - os.path.abspath(). Абсолютный путь — это полный путь к файлу или каталогу, начиная от корневого каталога системы, а не относительный путь (который зависит от текущего рабочего каталога).
>>> fil=os.path.abspath("report.txt")
>>> fil
'C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6\\report.txt'
Функции отделения из абсолютного пути только каталога/только имени файла - dirname/basename:
>>> drkt=os.path.dirname(fil)
>>> drkt
'C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6'
>>> name = os.path.basename(fil)
>>> name
'report.txt'
Функция разделения на кортеж из пути и из имени файла - split:
>>> head, tail = os.path.split(fil)
>>> head
'C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6'
>>> tail
'report.txt'
Функция проверки существования пути, заданного в символьной строке - exists:
>>> os.path.exists(g)
True
>>> os.path.exists('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA7')
@ -184,13 +166,6 @@ path.isdir - возвращает true, если папка является с
>>> os.path.exists('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA11')
False
Функция проверки существования файла - isfile:
>>> os.path.isfile('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6\\report.txt') # Такой файл есть
True
>>> os.path.isfile('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6\\figure_1.png") # Такого файла нет
False
# 4.2 Изучение обобщенного процесса работы с файлами
Было определено, что для обмена данными с файлами необходимо:
@ -212,8 +187,6 @@ path.isdir - возвращает true, если папка является с
>>> type(fp)
<class '_io.TextIOWrapper'>
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__',
@ -221,10 +194,6 @@ fp – это файловый объект. Он сохраняет ссылк
'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']
Если требуются другие операции с открываемым файлом, то для второго аргумента «mode=…» могут быть заданы следующие значения: w – запись с созданием нового файла или перезапись существующего файла, w+ - чтение и запись/перезапись файла, r – только чтение (это значение - по умолчанию), r+ - чтение и/или запись в существующий файл, a – запись в конец существующего файла или, если его нет, запись с созданием файла, a+ - то же, что и в «a», но с возможностью чтения из файла.
Создаваемые и читаемые файлы могут быть бинарными или символьными. При открытии бинарного файла к указанным выше буквам в аргументе-цели надо добавить символ «b»:
>>> fp1=open(drkt+'\\zapis2.bin',mode='wb+')
# 4.4 Изучение закрытия файла
@ -250,8 +219,6 @@ fp – это файловый объект. Он сохраняет ссылк
16
>>> fp2.close()
Метод выполняет действия по записи данных в файл, но возвращает количество записанных символов.
![](Ris3.png)
Далее был создан список из трех списков и с помощью цикла for все элементы списка были вписаны в файл в одну строку.
@ -315,15 +282,14 @@ fp – это файловый объект. Он сохраняет ссылк
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
>>> sps1
['1', ' 2', ' 3', ' 4', '5', ' 6', ' 7', ' 8', '9', ' 10', ' 11', ' 12']
Здесь, перед занесением строки в список с помощью метода rstrip, из неё удаляется символ конца строки (если не задавать аргументов, он удалит любые пробелы (пробел, табуляция, символы новой строки и т.п.) с конца строки.), а с помощью метода replace – скобки. Видно, что полученный список отличается от исходного sps типом данных, а также не убраны некоторые пробелы. Исправим это:
>>> sps2 = [int(i.strip()) for i in sps1]
>>> sps2=[]
>>> for i in sps1:
... sps2.append(int(i))
...
...
>>> sps2
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
Это list comprehension, который у каждого элемента sps1 убирает лишние пробелы с обеих сторон (в этом отличие rstrip от strip). Затем полученная строка конвертируется в число.
# 4.7 Изучение способа чтения данных из файла с помощью функции read
Был открыт текстовый файл и с помощью функции read из него сначала было прочитано и отображено 12 символов, а потом прочитаны остальные символы с помощью функции read без указания аргумента.

Загрузка…
Отмена
Сохранить