Получение суммы нескольких элементов, перечисленных в геойсоне
Я прошу прощения, если этот вопрос был задан или ответил в другом месте ранее. Я не мог найти это.
Я все еще относительно новичок в python, и в настоящее время я настраиваю скрипт для загрузки файлов из концентратора ESA через модуль sentinelsat.
Сейчас он работает, но я бы хотел, чтобы у него был способ распечатать общий размер файла. У меня уже есть распечатка имени всех файлов и их индивидуальных размеров данных. У меня также есть общее количество файлов в списке. Теперь мне просто нужно, чтобы отдельные размеры данных суммировались в 1 значение.
Вот мой фрагмент кода:
print("Listing file name and size:")
print("")
for n in range(0, np.size(bu_images_json["features"])):
print("Image name: ",json.dumps(bu_images_json["features"][n]["properties"]["title"]))
print("File size: ",json.dumps(bu_images_json["features"][n]["properties"]["size"]))
print("Found", n+1, "files availible for download")
print("Total amount to download")
И это выглядит примерно так
Image name: "S2A_OPER_PRD_MSIL1C_PDMC_20161009T061329_R010_V20160727T140022_20160727T140246"
File size: "5.02 GB"
Image name: "S2A_OPER_PRD_MSIL1C_PDMC_20161009T060351_R139_V20160726T142942_20160726T143122"
File size: "5.99 GB"
Image name: "S2A_OPER_PRD_MSIL1C_PDMC_20160720T213054_R053_V20160720T141008_20160720T141008"
File size: "5.65 GB"
Found 131 files availible for download
Total amount to download
Если кто-нибудь знает о какой-либо странице GitHub или о лайках, с которыми кто-то поиграл и расширил модуль sentinelsat - тогда я бы тоже хотел иметь ссылку.
Спасибо за ваше время.
1 ответ
from re import sub
print("Listing file name and size:")
total = 0
print("")
for n in range(0, np.size(bu_images_json["features"])):
print("Image name: ",json.dumps(bu_images_json["features"][n]["properties"]["title"]))
print("File size: ",json.dumps(bu_images_json["features"][n]["properties"]["size"]))
total += float(sub('[^0-9.]','',json.dumps(bu_images_json["features"][n]["properties"]["size"])))
print("Found", n+1, "files availible for download")
print("Total amount to download: ",total)