Перед вами файл flask3.py:
>from flask import Flask, request, render_template
>app = Flask(__name__)
>@app.route('/')
>def home():
>····thing = request.values.get('thing')
>····height = request.values.get('height')
>····color = request.values.get('color')
>····return render_template('home.html',
>········thing=thing, height=height, color=color)
>app.run(debug=True)
Перейдите в своем клиенте по следующему адресу:
>http://localhost:5000/?thing=Octothorpe&height=7&color=green
Вы должны увидеть следующее:
>I'm of course referring to Octothorpe, which is 7 feet tall and green.
1. Запишите текущие дату и время как строку в текстовый файл today.txt:
>>>> from datetime import date
>>>> now = date.today()
>>>> now_str = now.isoformat()
>>>> with open('today', 'wt') as output:
>…·····print(now_str, file=output)
>>>>
Вместо функции print вы могли бы использовать строку вроде output.write(now_str). Использование функции print добавляет символ перевода строки в конце.
2. Прочтите текстовый файл today.txt и разместите данные в строке today_string:
>>>> with open('today', 'rt') as input:
>…·····today_string = input.read()
>…
>>>> today_string
>'2014-02-04\n'
3. Разберите дату из строки today_string:
>>>> fmt = '%Y-%m-%d\n'
>>>> datetime.strptime(today_string, fmt)
>datetime.datetime(2014, 2, 4, 0, 0)
Если вы записали тот символ новой строки в файл, вам нужно, чтобы он совпал со строкой формата.
4. Выведите на экран список файлов текущей папки.
Если ваша текущая папка называется ohmy и содержит три файла с именами по названиям животных, код может выглядеть так:
>>>> import os
>>>> os.listdir('.')
>['bears', 'lions', 'tigers']
5. Выведите на экран список файлов родительской папки.
Если родительская папка содержит два файла и текущую папку ohmy, код может выглядеть так:
>>>> import os
>>>> os.listdir('..')
>['ohmy', 'paws', 'whiskers']
6. Используйте модуль multiprocessing, чтобы создать три отдельных процесса. Заставьте каждый из них ждать случайное количество секунд (от одной до пяти), вывести текущее время и завершить работу.
Сохраните этот файл под именем multi_times.py:
>import multiprocessing
>def now(seconds):
>····from datetime import datetime
>····from time import sleep
>····sleep(seconds)
>····print('wait', seconds, 'seconds, time is', datetime.utcnow())
>if __name__ == '__main__':
>····import random
>····for n in range(3):
>········seconds = random.random()
>········proc = multiprocessing.Process(target=now, args=(seconds,))
>········proc.start()
>$ python multi_times.py
>wait 0.4670532005508353 seconds, time is 2014-06-03 05:14:22.930541
>wait 0.5908421960431798 seconds, time is 2014-06-03 05:14:23.054925