def seconds_to_time_left_string(total_seconds):
s = int(total_seconds)
years = s // 31104000
if years > 1:
return '%d years' % years
s = s - (years * 31104000)
months = s // 2592000
if years == 1:
r = 'one year'
if months > 0:
r += ' and %d months' % months
return r
if months > 1:
return '%d months' % months
s = s - (months * 2592000)
days = s // 86400
if months == 1:
r = 'one month'
if days > 0:
r += ' and %d days' % days
return r
if days > 1:
return '%d days' % days
s = s - (days * 86400)
hours = s // 3600
if days == 1:
r = 'one day'
if hours > 0:
r += ' and %d hours' % hours
return r
s = s - (hours * 3600)
minutes = s // 60
seconds = s - (minutes * 60)
if hours >= 6:
return '%d hours' % hours
if hours >= 1:
r = '%d hours' % hours
if hours == 1:
r = 'one hour'
if minutes > 0:
r += ' and %d minutes' % minutes
return r
if minutes == 1:
r = 'one minute'
if seconds > 0:
r += ' and %d seconds' % seconds
return r
if minutes == 0:
return '%d seconds' % seconds
if seconds == 0:
return '%d minutes' % minutes
return '%d minutes and %d seconds' % (minutes, seconds)
for i in range(10):
print pow(8, i), seconds_to_time_left_string(pow(8, i))
Output:
1 1 seconds
8 8 seconds
64 one minute and 4 seconds
512 8 minutes and 32 seconds
4096 one hour and 8 minutes
32768 9 hours
262144 3 days
2097152 24 days
16777216 6 months
134217728 4 years
Google Maps больше не является бесплатным. Вам необходимо связать кредитную карту, чтобы вы могли получать счет, если на вашем сайте есть запросы, которые превышают 200 долларов США, которые они дают вам ежемесячно бесплатно. Вот почему вы получаете карты с водяными знаками.
Для получения дополнительной информации см.: https://cloud.google.com/maps-platform/pricing/
Как писала Виктория, Google Maps больше не является бесплатным, но вы можете переключить своего поставщика карт. Вы можете быть заинтересованы в OpenStreetMap, есть простой способ использовать его на вашем сайте, описанном здесь: https://handyman.dulare.com/switching-from-google-maps-to-openstreetmap/
К сожалению, на OpenStreetMap нет простого способа предоставить маршруты из одной точки в другую, нет уличного обзора.
с водяным знаком с  «только для целей развития» возвращается, когда выполняется одно из следующих условий:
1. В запросе отсутствует ключ API. 2.Биллинг не включен в вашем аккаунте. 3. Предоставленный метод выставления счетов недействителен (например, истекшая кредитная карта). 4. Превышен лимит на каждый день.
-->
developers.google.com/maps/documentation/embed/… – Ylama 7 August 2018 в 10:59