Python geçerli saati nasıl alınır


2889

Geçerli saati almak için kullanılan modül / yöntem nedir?


Lütfen en çok oy verilen cevapların timezonoe-naif datetime için olduğunu, üretim ortamında dünya çapında giderek daha fazla hizmetin birbirine bağlı olduğunu ve saat dilimi farkında olan datetime'nin gerekli standart haline geldiğini görüyoruz
Sławomir Lenart

Yanıtlar:


3049

kullanın:

>>> import datetime
>>> datetime.datetime.now()
datetime.datetime(2009, 1, 6, 15, 8, 24, 78915)

>>> print(datetime.datetime.now())
2009-01-06 15:08:24.789150

Ve tam zamanı:

>>> datetime.datetime.now().time()
datetime.time(15, 8, 24, 78915)

>>> print(datetime.datetime.now().time())
15:08:24.789150

Belgelere bakın fazla bilgi .

Yazmayı kaydetmek için datetimenesneyi datetimemodülden içe aktarabilirsiniz :

>>> from datetime import datetime

Ardından, öncüyü datetime.yukarıdakilerin hepsinden çıkarın .


25
Bu cevabın zaman dilimlerini (belki de UTC olarak) kapsaması ve belki de time.time () ile başlaması iyi olurdu.
Greg Lindahl

4
@Toskan formatı sorunun bir parçası değildi, bu yüzden cevabın bir parçası olmamalı. Biçimlendirme gibi şeyler içeren modülün daha fazla dokümantasyonuna yönelik bir bağlantı zaten var.
JiyuuSensei

Orijinal Python'un hangi sürümü verildi? Sadece datetime.datetime.now()Python 2.7 interaktif konsolumu yazarak (IronPython henüz güncellenmedi) bana print()cevapta kullanılan yeni örnekle aynı davranışı veriyor . Orijinal yanıtın gösterdiklerini başarıyla çoğaltmadım (datetime.datetime (2009, 1, 6, 15, 8, 24, 78915)). (Gerçekten istediğimden değil, print () davranışı tercih edilir, ama merak ediyorum.)
RTHarston

@BobVicktor: Python 2.7, 3.7 ve 3.8 hepsi benim için aynı davranışı veriyor, ne gördüğünden emin değilim.
Harley Holcombe

@HarleyHolcombe Hmm ... belki bir IronPython olayıdır? datetime.now()Kendi yazdığım zaman , cevabınızın gösterdiği gibi aynı çıktı print(datetime.now())...
RTHarston

955

Şunları kullanabilirsiniz time.strftime():

>>> from time import gmtime, strftime
>>> strftime("%Y-%m-%d %H:%M:%S", gmtime())
'2009-01-05 22:14:39'

48
Bu aşağıdaki @ ParaMeterz'in cevabından daha iyi / kötü mü? timeModülü neden modüle karşı kullanmalıyız datetime?
Nathan

3
Bilgisayarımın geçerli saatini döndürmüyor.
Saeed

5
Bu UTC
Voyager

5
@Saeed: Yerel saatinizi almak için localtime()yerine işlevini kullanın gmtime().
Jeyekomon

3
@frank Bkz ilgili soru üzerine datetimevs. time.
Packard CPW

621
from datetime import datetime
datetime.now().strftime('%Y-%m-%d %H:%M:%S')

Bu örnek için, çıktı şu şekilde olacaktır: '2013-09-18 11:16:32'

İşte strftimedirektiflerin listesi .


456

Harley'nin cevabına benzer , ancak str()hızlı n-kirli, biraz daha insan tarafından okunabilir format için işlevi kullanın :

>>> from datetime import datetime
>>> str(datetime.now())
'2011-05-03 17:45:35.177000'

13
Tek istediği, o anki saati göstermek değil, onu elde etmektir.
pppery

@ppperry, Ray'in cevabına bir değişken atamanız yeterlidir - myTime = str (datetime.now ()) .
Lukas

2
İlgili değil; "str" ​​adımı soru kapsamında değildir
pppery

4
@pppery Op da bunun bir zaman dizisi almakla ilgili olmadığını söylemiyor. Operasyon, zamanla ne yapmak istediklerini hiç söylemiyor, neden onu bir dizeye dönüştürmeyi göstermek kötü bir şey? Cevapların çoğu zamandan bir dize almaktan bahsediyor, bu yüzden yaygın bir kullanım örneği gibi görünüyor, neden Ray'in cevabını seçelim? Onunla nasıl bir şey yapılacağını bilmeden zaman almanın ne faydası var? Bunu yazdırabilir ya da üzerinde matematik yapabilirsiniz ve cevapların sadece birkaçı matematik üzerinde nasıl yapılacağını gösterir, bu yüzden bir dize yazdırmak / almak yaygın bir kullanımdır. ;-) (Bunun için geldiğimi biliyorum.)
RTHarston

1
Bu cevap 440'tan fazla upvotes olması, dize yönteminin minör ilave düşündürmektedir oldu birçok insan için yararlı.
John

360

Python geçerli saati nasıl alabilirim?

timemodül

timeModül bize hem de diğer kamu hizmetleri "Dönemden beri saniye" zaman söyler fonksiyonları sağlar.

import time

Unix Dönem Zamanı

Bu, veritabanlarına kaydetmek için zaman damgaları almanız gereken biçimdir. Bir tamsayıya dönüştürülebilen basit bir kayan nokta sayısıdır. Ayrıca, 1 Ocak 1970 00:00:00 tarihinden bu yana geçen saniye sayısını temsil ettiği için saniye cinsinden aritmetik için de iyidir ve bir sonraki bölüme bakacağımız diğer zaman gösterimlerine göre bellek ışığıdır:

>>> time.time()
1424233311.771502

Bu zaman damgası artık saniyeleri hesaba katmaz, bu nedenle doğrusal değildir - artık saniye yoksayılır. Bu yüzden uluslararası UTC standardına eşdeğer olmasa da, yakındır ve bu nedenle çoğu kayıt tutma durumu için oldukça iyidir.

Ancak bu, insan planlaması için ideal değildir. Belirli bir zamanda gerçekleşmek istediğiniz gelecekteki bir etkinliğiniz varsa, o saati datetime nesnesine veya serileştirilmiş datetime nesnesine ayrıştırılabilen bir dize ile depolamak istersiniz (bunlar daha sonra açıklanacaktır).

time.ctime

Geçerli saati işletim sisteminiz tarafından tercih edilen şekilde de temsil edebilirsiniz (bu, sistem tercihlerinizi değiştirdiğinizde değişebileceği anlamına gelir, bu nedenle, diğerlerinin beklediği gibi, tüm sistemlerde standart olması için buna güvenmeyin) . Bu genellikle kullanıcı dostudur, ancak genellikle kronolojik olarak sıralanan dizelerle sonuçlanmaz:

>>> time.ctime()
'Tue Feb 17 23:21:56 2015'

Zaman damgalarını insan tarafından okunabilir forma da hidratlayabilirsiniz ctime:

>>> time.ctime(1424233311.771502)
'Tue Feb 17 23:21:51 2015'

Bu dönüşüm de kayıt tutma için iyi değildir (yalnızca insanlar tarafından ayrıştırılacak metin hariç - ve Gelişmiş Optik Karakter Tanıma ve Yapay Zeka ile, bu vakaların sayısının azalacağını düşünüyorum).

datetime modül

datetimeModül burada da oldukça yararlıdır:

>>> import datetime

datetime.datetime.now

datetime.nowŞimdiki zaman veren bir sınıf yöntemidir. Saat time.localtimedilimi bilgisi olmadan kullanır (verilmezse, aşağıdaki saat dilimine bakın). Kabuğunda yankılanan bir temsili (eşdeğer bir nesneyi yeniden oluşturmanıza izin verir) vardır, ancak yazdırıldığında (veya a'ya zorlandığında str), insan tarafından okunabilir (ve neredeyse ISO) biçimindedir ve sözlükbilimsel sıralama, kronolojik sıralama:

>>> datetime.datetime.now()
datetime.datetime(2015, 2, 17, 23, 43, 49, 94252)
>>> print(datetime.datetime.now())
2015-02-17 23:43:51.782461

datetime en utcnow

Global bir standart olan UTC saatinde bunu yaparak datetime nesnesi alabilirsiniz:

>>> datetime.datetime.utcnow()
datetime.datetime(2015, 2, 18, 4, 53, 28, 394163)
>>> print(datetime.datetime.utcnow())
2015-02-18 04:53:31.783988

UTC, GMT saat dilimine neredeyse eşdeğer bir zaman standardıdır. (GMT ve UTC Yaz Saati Uygulaması için değişmezken, kullanıcıları Yaz aylarında İngiliz Yaz Saati gibi diğer saat dilimlerine geçebilir.)

datetime saat dilimi farkında

Ancak, şimdiye kadar oluşturduğumuz tarih-saat nesnelerin hiçbiri kolayca çeşitli zaman dilimlerine dönüştürülemez. Bu sorunu pytzmodülle çözebiliriz :

>>> import pytz
>>> then = datetime.datetime.now(pytz.utc)
>>> then
datetime.datetime(2015, 2, 18, 4, 55, 58, 753949, tzinfo=<UTC>)

Eşdeğer olarak, Python 3'te , nesnenin saat dilimini fark eden timezonebir utc timezoneörneği eklenmiş sınıfa sahibiz (ancak kullanışlı pytzmodül olmadan başka bir saat dilimine dönüştürmek okuyucuya bir alıştırma olarak bırakılır):

>>> datetime.datetime.now(datetime.timezone.utc)
datetime.datetime(2015, 2, 18, 22, 31, 56, 564191, tzinfo=datetime.timezone.utc)

Ve görüyoruz ki orijinal utc nesnesinden zaman dilimlerine kolayca dönüştürebiliriz.

>>> print(then)
2015-02-18 04:55:58.753949+00:00
>>> print(then.astimezone(pytz.timezone('US/Eastern')))
2015-02-17 23:55:58.753949-05:00

Ayrıca naif bir datetime nesnesini pytzsaat dilimi localizeyöntemiyle veya tzinfo özniteliğini değiştirerek (ile replacekörü körüne yapılır) değiştirebilirsiniz, ancak bunlar en iyi uygulamalardan daha son çözümlerdir :

>>> pytz.utc.localize(datetime.datetime.utcnow())
datetime.datetime(2015, 2, 18, 6, 6, 29, 32285, tzinfo=<UTC>)
>>> datetime.datetime.utcnow().replace(tzinfo=pytz.utc)
datetime.datetime(2015, 2, 18, 6, 9, 30, 728550, tzinfo=<UTC>)

pytzModül bizim yapmamıza izin verir datetimenesneleri farkında dilimini ve mevcut saat dilimlerinde yüzlerce kez dönüştürmek pytzmodülü.

Bir görünüşte UTC zaman ve mağaza için bu nesne seri olabilir o bir veritabanında , ancak ilk önce gösterdiğim Unix Epoch zamanını depolamaktan çok daha fazla bellek gerektirir ve hataya daha açık olur.

Diğer görüntüleme zamanları, özellikle farklı zaman dilimlerinden gelebilecek verilerle uğraşırken çok daha fazla hataya açıktır. Bir dizenin veya serileştirilmiş datetime nesnesinin hangi zaman diliminin amaçlandığı konusunda karışıklık olmasını istemezsiniz.

Kullanıcı için Python ile zamanı görüntülüyorsanız, ctimebir tabloda değil (genellikle iyi sıralanmaz), belki de bir saatte güzel çalışır. Ancak, Python'da zamanla uğraşırken, Unix zamanını veya saat dilimi farkında bir UTC datetimenesnesini kullanarak kişisel olarak tavsiye ederim .


133

Yapmak

from time import time

t = time()
  • t - şamandıra numarası, zaman aralığı ölçümü için iyi.

Unix ve Windows platformları için bazı farklar vardır.


Windows 10 evindeki sonucum 1576095264.2682993 idi - Windows için bu sadece saniyeler içinde zaman verebilir.
PythonMaster202

101
>>> from time import gmtime, strftime
>>> strftime("%a, %d %b %Y %X +0000", gmtime())
'Tue, 06 Jan 2009 04:54:56 +0000'

Geçerli GMT'yi belirtilen biçimde çıkarır. Bir localtime()yöntem de var.

Bu sayfada daha fazla ayrıntı var.


69

Önceki cevapların hepsi iyi öneriler, ancak kullanımı en kolay buluyorum ctime():

In [2]: from time import ctime
In [3]: ctime()
Out[3]: 'Thu Oct 31 11:40:53 2013'

Bu, geçerli yerel saatin güzel biçimlendirilmiş dize temsilini verir.


OP nasıl gösterileceğini değil, zamanı nasıl alacağını sordu !
TheTechRobo36414519


52

timeNesne olarak şimdiki zamana ihtiyacınız varsa :

>>> import datetime
>>> now = datetime.datetime.now()
>>> datetime.time(now.hour, now.minute, now.second)
datetime.time(11, 23, 44)

36

.isoformat() dokümantasyonda, ancak henüz burada değil (bu @Ray Vega'nın cevabına çok benziyor):

>>> import datetime
>>> datetime.datetime.now().isoformat()
'2013-06-24T20:35:55.982000'

35

Neden Birleşik Devletler Donanması'nın resmi zaman tutucusu olan ABD Deniz Gözlemevine sormuyorsunuz ?

import requests
from lxml import html

page = requests.get('http://tycho.usno.navy.mil/cgi-bin/timer.pl')
tree = html.fromstring(page.content)
print(tree.xpath('//html//body//h3//pre/text()')[1])

DC bölgesinde (benim gibi) yaşıyorsanız, gecikme çok kötü olmayabilir ...


18
@ C8H10N4O2 Diğer yanıtların, bilgisayarınızın doğru zamanı zaten bildiğini varsayarken, bu yanıt, bilgisayarın Internet bağlantısı olduğunu, ABD'de bulunduğunuzu ve bu dosyayı asla devralmayacaklarını varsayar / bağlantıyı değiştirin. Bu cevapta kabul edilenden çok daha fazla varsayım var. Hala zeki hiçbiri daha az
sudobangbang

33

Şu anki saati almak için pandaları kullanmak , eldeki sorunun aşırıya kaçması:

import pandas as pd
print(pd.datetime.now())
print(pd.datetime.now().date())
print(pd.datetime.now().year)
print(pd.datetime.now().month)
print(pd.datetime.now().day)
print(pd.datetime.now().hour)
print(pd.datetime.now().minute)
print(pd.datetime.now().second)
print(pd.datetime.now().microsecond)

Çıktı:

2017-09-22 12:44:56.092642
2017-09-22
2017
9
22
12
44
56
92693

28

Ben ne kadar sona erdi budur:

>>>from time import strftime
>>>strftime("%m/%d/%Y %H:%M")
01/09/2015 13:11

Ayrıca, bu tablo tarihi istediğiniz gibi biçimlendirmek için uygun format kodlarını seçmek için gerekli bir referanstır ( buradaki Python "datetime" belgelerinden ).

strftime format kod tablosu


2
strftime(time_format)geçerli yerel saati verilen değere karşılık gelen bir dize olarak döndürür time_format. Not: time.strftime()ve datetime.strftime()farklı yönerge kümelerini %zdestekleyintime.strftime() , örn., Python 2'de desteklenmez .
jfs

1
Zaman yerine tarih saatini kullanmak daha iyi bir uygulama mıdır?
Kristen G.15

2
Birçok timemodül işlevi, karşılık gelen C işlevleri etrafında ince sargılardır. datetimedaha yüksek bir seviyedir ve genellikle daha taşınabilirdir.
jfs

24

zaten numpy kullanıyorsanız doğrudan numpy.datetime64 () işlevini kullanabilirsiniz.

import numpy as np
str(np.datetime64('now'))

sadece tarih için:

str(np.datetime64('today'))

veya zaten panda kullanıyorsanız pandas.to_datetime () işlevini kullanabilirsiniz.

import pandas as pd
str(pd.to_datetime('now'))

veya,

str(pd.to_datetime('today'))

23

timeModülü kullanabilirsiniz :

import time
print time.strftime("%d/%m/%Y")

>>> 06/02/2015

Sermayenin kullanımı Ytüm yılı verir ve kullanmak yverir 06/02/15.

Daha uzun bir zaman vermek için aşağıdaki kodu da kullanabilirsiniz:

time.strftime("%a, %d %b %Y %H:%M:%S")
>>> 'Fri, 06 Feb 2015 17:45:09'

20

datetime.now()geçerli saati yerel saat dilimindeki zamanı temsil eden naif bir datetime nesnesi olarak döndürür. Bu değer belirsiz olabilir, örneğin DST geçişleri sırasında ("geri çekilme"). Belirsizliği önlemek için ya UTC saat dilimi kullanılmalıdır:

from datetime import datetime

utc_time = datetime.utcnow()
print(utc_time) # -> 2014-12-22 22:48:59.916417

Veya karşılık gelen saat dilimi bilgilerinin eklendiği saat dilimine duyarlı bir nesne (Python 3.2+):

from datetime import datetime, timezone

now = datetime.now(timezone.utc).astimezone()
print(now) # -> 2014-12-23 01:49:25.837541+03:00

18
import datetime
date_time = datetime.datetime.now()

date = date_time.date()  # Gives the date
time = date_time.time()  # Gives the time

print date.year, date.month, date.day
print time.hour, time.minute, time.second, time.microsecond

Do dir(date)ya da paket dahil değişkenler. Değişkenle ilişkili tüm öznitelikleri ve yöntemleri alabilirsiniz.


@snofty ve @ user1016274, eğer import datetimeo olduğunu datetime.datetime.now()\ n ise from datetime import datetimeo zaman olduğudatetime.now()
theBuzzyCoder

17
>>> import datetime, time
>>> time = time.strftime("%H:%M:%S:%MS", time.localtime())
>>> print time
'00:21:38:20S'

Sanırım "datetime.now ().
Strftime

evet dediğin gibi yapılabilir. "datetime.datetime.now (). strftime ("% H:% M:% S:% MS ")"
user2030113

3
% MS size milisaniye vermiyor !!
ZF007

15

Varsayılan olarak, now()işlev çıktıyı YYYY-MM-DD HH:MM:SS:MSbiçiminde döndürür . Bir Python komut dosyasında geçerli tarih ve saati almak ve sonuçları ekrana yazdırmak için aşağıdaki örnek komut dosyasını kullanın. getDateTime1.pyAşağıdaki içeriğe sahip bir dosya oluşturun .

import datetime

currentDT = datetime.datetime.now()
print (str(currentDT))

Çıktı aşağıdaki gibi görünür:

2018-03-01 17:03:46.759624

14

Bu soru sadece onun uğruna yeni bir cevaba ihtiyaç duymuyor ... parlak bir yeni-ish oyuncak / modül, ancak yeterli bir gerekçe. Bu Sarkaç kütüphanesi , oku besleyen doğal kusurlar ve hatalar dışında, okun denediği şeyleri gibi görünen .

Örneğin, orijinal sorunun cevabı:

>>> import pendulum
>>> print(pendulum.now())
2018-08-14T05:29:28.315802+10:00
>>> print(pendulum.now('utc'))
2018-08-13T19:29:35.051023+00:00

Endişelenmek için birden fazla RFC ve ISO da dahil olmak üzere adresleme gerektiren birçok standart var. Hiç karıştırmayın; Endişelenme, biraz bakdir(pendulum.constants) RFC ve ISO formatlarından biraz daha fazlası var.

Yerel derken ne demek istiyoruz? Yani:

>>> print(pendulum.now().timezone_name)
Australia/Melbourne
>>>

Muhtemelen geri kalanlarınızın çoğu başka bir yerde demek.

Ve devam ediyor. Uzun lafın kısası: Sarkaç, HTTP için isteklerin ne yaptığını tarih ve saat için yapmaya çalışır. Özellikle hem kullanım kolaylığı hem de kapsamlı belgeler için dikkate değer.


13

Saat diliminin geçerli saati

from datetime import datetime
import pytz

tz_NY = pytz.timezone('America/New_York') 
datetime_NY = datetime.now(tz_NY)
print("NY time:", datetime_NY.strftime("%H:%M:%S"))

tz_London = pytz.timezone('Europe/London')
datetime_London = datetime.now(tz_London)
print("London time:", datetime_London.strftime("%H:%M:%S"))

tz_India = pytz.timezone('Asia/India')
datetime_India = datetime.now(tz_India)
print("India time:", datetime_India.strftime("%H:%M:%S"))

#list timezones
pytz.all_timezones

12

Http://crsmithdev.com/arrow/ adresinden ok modülünü deneyin :

import arrow
arrow.now()

Veya UTC sürümü:

arrow.utcnow()

Çıktısını değiştirmek için .format () öğesini ekleyin:

arrow.utcnow().format('YYYY-MM-DD HH:mm:ss ZZ')

Belirli bir saat dilimi için:

arrow.now('US/Pacific')

Bir saat önce:

arrow.utcnow().replace(hours=-1)

Ya da gist istiyorsan.

arrow.get('2013-05-11T21:23:58.970460+00:00').humanize()
>>> '2 years ago'

5
sakının arrow.now('Time/Zone')(bazı saat dilimleri için başarısız olabilir arrowkullanımları dateutilutc kırıldı -> yerel dönüşümler kullanılan içindedir arrow.now()Not:. pytzBöyle sorunu var Ayrıca. , diğer zaman dilimi alakalı sorunlar vardır
jfs

12

Milisaniye ile zaman almak istiyorum. Onları almanın basit bir yolu:

import time, datetime

print(datetime.datetime.now().time())                         # 11:20:08.272239

# Or in a more complicated way
print(datetime.datetime.now().time().isoformat())             # 11:20:08.272239
print(datetime.datetime.now().time().strftime('%H:%M:%S.%f')) # 11:20:08.272239

# But do not use this:
print(time.strftime("%H:%M:%S.%f", time.localtime()), str)    # 11:20:08.%f

Ama sadece milisaniye istiyorum , değil mi? Onları almanın en kısa yolu:

import time

time.strftime("%H:%M:%S", time.localtime()) + '.%d' % (time.time() % 1 * 1000)
# 11:34:23.751

Ondalık nokta sayısını ayarlamak için son çarpmada sıfır ekleyin veya kaldırın:

def get_time_str(decimal_points=3):
    return time.strftime("%H:%M:%S", time.localtime()) + '.%d' % (time.time() % 1 * 10**decimal_points)

1
Bu Python 3'te çalışır: time.strftime ("% H:% M:% S", time.localtime ()) + '. {}'. Biçiminde (int (time.time ()% 1 * 1000))
Greg Graham

11

Zamanı almak için bu işlevi kullanabilirsiniz (maalesef AM veya PM demiyor):

def gettime():
    from datetime import datetime
    return ((str(datetime.now())).split(' ')[1]).split('.')[0]

Daha sonra birleştirilecek saatleri, dakikaları, saniyeleri ve milisaniyeleri almak için şu işlevleri kullanabilirsiniz:

Saat:

def gethour():
    from datetime import datetime
    return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[0]

Dakika:

def getminute():
    from datetime import datetime
    return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[1]

İkinci:

def getsecond():
    from datetime import datetime
    return (((str(datetime.now())).split(' ')[1]).split('.')[0]).split(':')[2]

Milisaniye:

def getmillisecond():
    from datetime import datetime
    return (str(datetime.now())).split('.')[1]

10

Sadece ms cinsinden geçerli zaman damgasını istiyorsanız (örneğin, yürütme süresini ölçmek için), "timeit" modülünü de kullanabilirsiniz:

import timeit
start_time = timeit.default_timer()
do_stuff_you_want_to_measure()
end_time = timeit.default_timer()
print("Elapsed time: {}".format(end_time - start_time))

8

Aşağıdakileri formatlamak zorunda kalmadan almak için kullanıyorum. Bazı insanlar split yöntemini sevmez, ancak burada yararlıdır:

from time import ctime
print ctime().split()[3]

SS: DD: SS formatında yazdırılır.


8

Henüz kimse bundan bahsetmedi ve bu son zamanlarda karşılaştığım bir şey ... datetime'ın utcnow () ile birleştirilmiş bir pytz timezone's fromutc () yöntemi, yararlı bir geçerli saat (ve tarih) almanın en iyi yoludur herhangi bir saat diliminde.

from datetime import datetime

import pytz


JST = pytz.timezone("Asia/Tokyo")


local_time = JST.fromutc(datetime.utcnow())

İstediğiniz tek şey zamansa, bunu alabilirsiniz local_time.time().


Şaşırtıcı bir şekilde, Yukarıdaki yanıtların tümü Saat dilimlerinden bahsetmedi. ayrıca istediğiniz biçimi almak için strftime eklemeniz gerekir.
GraphicalDot

1
Zaten başka cevaplarda da yer aldığından (ve ekran biçimlendirmesi sorunun bir parçası değildi) eklemedim.
kungphu

7

Bu soru Python içindir, ancak Django Python için en yaygın kullanılan çerçevelerden biri olduğundan, Django kullanıyorsanız, timezone.now()bunun yerine her zaman kullanabileceğinizi not etmek önemlidir datetime.datetime.now(). Birincisi saat dilimi 'farkında', ikincisi ise değil.

Bkz bu SO cevabı ve Django doc detayları ve mantığı arkasına için timezone.now().

from django.utils import timezone

now = timezone.now()

7

Bunu ctime () kullanarak yapabilirsiniz:

from time import time, ctime
t = time()
ctime(t)

çıktı:

Sat Sep 14 21:27:08 2019

Bu çıktılar farklıdır, çünkü döndürülen zaman damgası ctime()coğrafi konumunuza bağlıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.