Получение суммы нескольких элементов, перечисленных в геойсоне

Я прошу прощения, если этот вопрос был задан или ответил в другом месте ранее. Я не мог найти это.

Я все еще относительно новичок в 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)
Другие вопросы по тегам