мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
python:week3 [01/02/2017 10:04] – создано ybezrukovpython:week3 [16/10/2018 12:17] (текущий) ybezrukov
Строка 1: Строка 1:
-====== Дополнительные методы форматирование вывода ======+====== Форматирование вывода с помощью format ======
  
 +Для строк существует дополнительная функция Для дополнительного форматирования вывода можно пользоваться методом .format. С его помощью можно делать подстановки по определенному шаблону в строке. Например:
  
-{{url>http://novt.net/iframe-embed.html#code=s+%3D+'Hello,+world.'%0Astr(s%29%0Arepr(s%29%0Astr(1/7%29%0Ax+%3D+10+*+3.25%0Ay+%3D+200+*+200%0As+%3D+'The+value+of+x+is+'+%2B+repr(x%29+%2B+',+and+y+is+'+%2B+repr(y%29+%2B+'...'%0Aprint(s%29%0Ahello+%3D+'hello,+world%5Cn'%0Ahellos+%3D+repr(hello%29%0Aprint(hellos%29%0Arepr((x,+y,+('spam',+'eggs'%29%29%29%0A%0A%0A&origin=opt-frontend.js&cumulative=false&heapPrimitives=false&textReferences=false&py=3&rawInputLstJSON=%5B%5D&curInstr=0&codeDivWidth=350&codeDivHeight=400}}+{{url>https://pt.nsunc.com/iframe-embed.html#code=print('Hello,+%7B%7D!'.format('%D0%9A%D0%A3%D0%9A%D0%A3!'%29%29%0Aprint('%7B0%7D,+%7B1%7D,+%7B2%7D'.format('%D0%B0',+'%D0%B1',+'%D0%B2'%29%29%0Aprint('%7B1%7D,+%7B2%7D,+%7B0%7D'.format('%D0%B0',+'%D0%B1',+'%D0%B2'%29%29%0Aprint('%D0%9D%D0%BE%D0%B2%D0%BE%D1%81%D0%B8%D0%B1%D0%B8%D1%80%D1%81%D0%BA%3A+%7Blatitude%7D,+%7Blongitude%7D'.format(latitude%3D'55.3N',+longitude%3D'83.4E'%29%29&origin=opt-frontend.js&cumulative=false&heapPrimitives=false&textReferences=false&py=3&rawInputLstJSON=%5B%5D&curInstr=0&codeDivWidth=350&codeDivHeight=400}}
  
 +===== Пример 1 =====
  
-Отображение +Выведем на экран три столбца кубов и квадратов числа
  
-{{url>http://novt.net/iframe-embed.html#code=for+x+in+range(1,+11%29%3A%0A++++print('%7B0%3A2d%7D+%7B1%3A3d%7D+%7B2%3A4d%7D'.format(x,+x*x,+x*x*x%29%29&origin=opt-frontend.js&cumulative=false&heapPrimitives=false&textReferences=false&py=3&rawInputLstJSON=%5B%5D&curInstr=0&codeDivWidth=350&codeDivHeight=400}}+{{url>https://pt.nsunc.com/iframe-embed.html#code=for+x+in+range(1,+11%29%3A%0A++++print('%7B0%3A2d%7D+%7B1%3A3d%7D+%7B2%3A4d%7D'.format(x,+x*x,+x*x*x%29%29&origin=opt-frontend.js&cumulative=false&heapPrimitives=false&textReferences=false&py=3&rawInputLstJSON=%5B%5D&curInstr=0&codeDivWidth=350&codeDivHeight=400}}
  
-====== Задача ======+====== Задача ======
  
-Написать программу, которая выводит на экран список чисел от до 100 спиралью.+Написать программу, которая сначала создает двумерный список и заполняет его числами по спирали. А после печатает на экран в виде красиво сформированной таблицы.
  
 +Подсказка: объявить двумерный список можно так:
 +
 +<code python>
 +l=[[],[]]
 +</code>
 +
 +Добавить элемент в список можно с помощью функции .append()
 +
 +<code python>
 +l=[]
 +
 +l.append(5)
 +</code>
 +
 +Например
 +<code>
 +1 10 9  8
 +2 11 12 7
 +3 4  5  6
 +</code>
 +
 +====== Работа с файлами ======
 +
 +Работа с текстовыми файлами в Питоне реализована несколько проще чем в Паскале и немного похожа на С. Откроем файл на чтение:
 +
 +<code python>
 +f = open('text.txt', 'r', encoding="utf8")
 +</code>
 +
 +Функция open в данном случае принимает три аргумента, первый - имя файла, второй способ доступа: r - чтение, w - запись (если файл не существует, то будет создан), а третий - кодировка текстового файла, с которым нам предстоит работать.
 +
 +Если наш файл текстовый, то прочитать его построчно можно следующим способом:
 +
 +<code python>
 +f = open('text.txt', 'r', encoding="utf8")
 +for line in f:
 +  print(line)
 +</code>
 +
 +Аналогичным образом можно и писать в файл, сначала откроем файл на запись:
 +
 +<code python>
 +f = open('text.txt', 'w')
 +</code>
 +
 +Сохраним в файл содержимое списка, делается это с помощью функции write():
 +
 +<code python>
 +f = open('text.txt', 'w', encoding="utf8")
 +
 +l = ['Привет', 'это', 'строки', ' в', ' файле']
 +
 +for item in l:
 +  f.write(item)
 +  
 +f.close()
 +</code>
 +
 +Обратите внимание, что файл, в который было что-то записано, нужно обязательно закрывать.