Биткоин
Биткоин - вид цифровой валюты. В файле bitcoin.py реализуйте программу:- Ожидает, что пользователь в аргументе командной строки число биткоинов, n, которое хочет купить. Если аргумент не может быть конвертирован в тип float, программа должна завершить работу через sys.exit с выводом сообщения об ошибке.
-
Запрашивает API CoinDesk Bitcoin Price Index
https://api.coindesk.com/v1/bpi/currentprice.json,
чтобы получить json объект, среди ключей объекта есть текущая цена биткоина.
Не забудьте обработать
исключения.
import requests try: ... except requests.ReaquestException: - Выводит текущую цену n биткоинов в долларах США до 4 десятичных знаков, используя , как разделитель тысяч.
Подсказка
- Напомним, что модуль sys имеет argv
-
Модуль request имеет методы, см.https://requests.readthedocs.io/en/latest/.
Среди них есть get, см. https://requests.readthedocs.io/en/latest/user/quickstart/#make-a-request
и json, см
https://requests.readthedocs.io/en/latest/user/quickstart/#json-response-content.
Вы можете установить пакет:
pip install requests -
CoinDesk API возвращает JSON:
{"time":{ "updated":"Apr 5, 2023 14:18:00 UTC", "updatedISO":"2023-04-05T14:18:00+00:00", "updateduk":"Apr 5, 2023 at 15:18 BST" }, "disclaimer":"This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org", "chartName":"Bitcoin", "bpi":{ "USD":{ "code":"USD", "symbol":"$", "rate":"28,204.7072", "description":"United States Dollar", "rate_float":28204.7072 }, "GBP":{ "code":"GBP", "symbol":"£", "rate":"23,567.6277", "description":"British Pound Sterling", "rate_float":23567.6277 }, "EUR":{ "code":"EUR", "symbol":"€", "rate":"27,475.5027", "description":"Euro", "rate_float":27475.5027 } } } -
Вы можете форматировать USD до 4 десятичных знаков с запятой
для разделения тысяч :
print(f"${amount:,.4f}")
Демонстрация
Демонстрация была записана, когда биткоин был $28,072.4255 . Ваш вывод может отличаться.Шаги выполнения
Зайдите на cs50.dev. Используя команду cd, сделайте рабочим каталогом codespace. Создайте каталог bitcoin, выполнив
mkdir bitcoin
Перейдите в каталог.
cd bitcoin
Выполните
code bitcoin.py
чтобы открыть редактор, и напишите вашу программу.
Как проверить
Сделайте рабочим каталог с программой.
-
Запустите программу python bitcoin.py.
Ваша программа должна использовать sys.exit, завершить работу и вывести:
Пропущен аргумент командной строки -
Запустите программу python bitcoin.py cat.
Программа завершает работу использую sys.exit и выводит:
Аргумент командной строки не число - Запустите программу python bitcoin.py 2. Ваша программа должна вывести цену двух биткоинов в долларах до 4 десятичных знаков используя , как разделитель тысяч.
npx cs204 2023/bitcoin local
Проверка была создана, когда биткоин был $28,072.4255 . Ваш вывод может отличаться.
Для отправки на проверку выполните команду
npx cs204 2023/bitcoin
Заполните форму
форма отправки на проверкуСвои оценки вы можете посмотреть на http://90.188.117.161:8080.