<!DOCTYPE html>
    <html lang="vi" xmlns="http://www.w3.org/1999/xhtml" prefix="og: http://ogp.me/ns#">
    <head>
<title>Datetime trong Python</title>
<meta name="description" content="Datetime trong Python - Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;www.nguoicodonvn2008.info&#x002F;vi&#x002F;news&#x002F;savefile&#x002F;kien-thuc-may-tinh&#x002F;datetime-trong-python-11235.html">
<meta name="author" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :.">
<meta name="copyright" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :. [admin@nguoicodonvn2008.info]">
<meta name="robots" content="index, archive, follow, noodp">
<meta name="googlebot" content="index,archive,follow,noodp">
<meta name="msnbot" content="all,index,follow">
<meta name="generator" content="NukeViet v4.5">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="Datetime trong Python">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;www.nguoicodonvn2008.info&#x002F;vi&#x002F;news&#x002F;savefile&#x002F;kien-thuc-may-tinh&#x002F;datetime-trong-python-11235.html">
<meta property="og:site_name" content=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.">
<meta property="og:url" content="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/datetime-trong-python-11235.html">
<link rel="shortcut icon" href="https://www.nguoicodonvn2008.info/favicon.ico">
<link rel="canonical" href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/datetime-trong-python-11235.html">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/" title="Tin Tức" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/karaoke-dual/" title="Tin Tức - Karaoke Dual" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nhac-tre/" title="Tin Tức - Nhạc trẻ" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tru-tinh/" title="Tin Tức - Trữ tình" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nuoc-ngoai/" title="Tin Tức - Nước ngoài" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/remix/" title="Tin Tức - Remix" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tam-su-tinh-yeu/" title="Tin Tức - Tâm sự tình yêu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tho-suu-tam/" title="Tin Tức - Thơ sưu tầm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/cuoc-song/" title="Tin Tức - Cuộc sống" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/phan-mem/" title="Tin Tức - Phần mềm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/kien-thuc-may-tinh/" title="Tin Tức - Kiến thức máy tính" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/hoc-tap/" title="Tin Tức - Học tập" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tai-lieu/" title="Tin Tức - Tài liệu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/de-thi/" title="Tin Tức - Đề thi" type="application/rss+xml">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css" type="text/css">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js" type="text/javascript">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css">
<link rel="StyleSheet" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css">
<style type="text/css">
	body{background: #fff;}
</style>
    </head>
    <body>
<div id="print">
	<div id="hd_print">
		<h2 class="pull-left">.&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.</h2>
		<p class="pull-right"><a title=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;." href="https://www.nguoicodonvn2008.info/">https://www.nguoicodonvn2008.info</a></p>
	</div>
	<div class="clear"></div>
	<hr />
	<div id="content">
		<h1>Datetime trong Python</h1>
		<ul class="list-inline">
			<li>Thứ năm - 25/09/2025 23:32</li>
			<li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="javascript:;" onclick="window.print()">In ra</a></li>
			<li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="javascript:;" onclick="window.close()">Đóng cửa sổ này</a></li>
		</ul>
		<div class="clear"></div>
		<div id="hometext">
		</div>
				<div class="imghome">
			<img alt="Datetime trong Python" src="https://st.quantrimang.com/photos/image/2019/05/17/Ham-Python-size-220x115-znd.png" width="460" class="img-thumbnail" />
		</div>
		<div class="clear"></div>
		<div id="bodytext" class="clearfix">
			<p style="text-align: justify;"><strong>Datetime Python</strong>&nbsp;được sử dụng như thế nào? Nếu đang muốn tìm hiểu về&nbsp;<strong>datetime in Python</strong>, mời bạn đọc bài viết dưới đây.</p>

<h2 style="text-align: justify;">&nbsp;</h2>

<p style="text-align: justify;">Trong Python, ngày và giờ không phải kiểu dữ liệu của riêng chúng, nhưng một mô đun tên DateTime có thể được nhập để hoạt động với ngày tháng và thời gian. Mô đun Datetime trong Python được tích hợp sẵn, vì thế, bạn không cần cài đặt nó từ bên ngoài.</p>

<h2 id="mcetoc_1iu3mcmld6" style="text-align: justify;">Mô đun DateTime trong Python</h2>

<p style="text-align: justify;">Nếu đang gặp phải câu hỏi nhập vào một ngày ngày tháng năm tìm ngày kế sau ngày vừa nhập ngày tháng năm python, thì bài viết dưới đây sẽ cho bạn câu trả lời.</p>

<p style="text-align: justify;">Mô đun Datetime trong Python cung cấp class để hoạt động với ngày tháng và thời gian. Những class này cung cấp một số hàm để xử lý với ngày tháng, thời gian và khoảng thời gian. Ngày tháng và datetime là một đối tượng trong Python, vì thế, khi bạn thao tác chúng, bạn thực sự thay đổi đối tượng, không phải chuỗi hay timestamp.</p>

<p style="text-align: justify;"><strong>Tại sao cần mô đun Datetime?</strong></p>

<ul>
	<li style="text-align: justify;">Hỗ trợ làm việc với ngày và giờ trong các ứng dụng thực tế như lập lịch hoặc ghi nhật ký.</li>
	<li style="text-align: justify;">Cho phép dễ dàng tính toán sự khác biệt giữa hai ngày hoặc giờ.</li>
	<li style="text-align: justify;">Hỗ trợ định dạng và phân tích cú pháp chuỗi ngày/giờ để tạo ra kết quả đầu ra thân thiện với người dùng.</li>
	<li style="text-align: justify;">Hữu ích cho việc đóng dấu thời gian cho các sự kiện, tệp hoặc mục nhập dữ liệu.</li>
	<li style="text-align: justify;">Thiết yếu để xử lý múi giờ, khoảng thời gian và các hoạt động dựa trên lịch.</li>
</ul>

<div style="text-align: justify;">&nbsp;</div>

<p style="text-align: justify;"><strong>Mô đun Datetime chia thành 6 class chính:</strong></p>

<ul>
	<li style="text-align: justify;">Date có thuộc tính là năm, tháng và ngày.</li>
	<li style="text-align: justify;">Time có thuộc tính là giờ, phút, giây, micro giây và tzinfo.</li>
	<li style="text-align: justify;">Datetime là sự kết hợp của ngày tháng và thời gian.</li>
	<li style="text-align: justify;">Timedelta biểu thị sự khác biệt giữa hai ngày tháng, thời gian.</li>
	<li style="text-align: justify;">Tzinfo cũng cấp thông tin về múi giờ.</li>
	<li style="text-align: justify;">Timezone triển khai class cơ sở tzinfo dưới dạng phần bù cố định từ UTC.</li>
</ul>

<p style="text-align: justify;"><strong>Ví dụ 1: Trả về ngày giờ hiện tại</strong></p>

<pre id="pre0" style="text-align: justify;">
import datetime

datetime_object = datetime.datetime.now()
print(datetime_object)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre1">
<code>2019-03-06 11:13:33.969330</code></pre>

<p style="text-align: justify;">Ở ví dụ này, ta vừa nhập&nbsp;<strong>module datetime</strong>&nbsp;bằng cách sử dụng câu lệnh<em>&nbsp;import datetime</em>.</p>

<p style="text-align: justify;"><em>Class datetime</em>&nbsp;được khai báo trong&nbsp;<strong>module datetime</strong>, sau đó sử dụng lệnh&nbsp;<em>now()</em>&nbsp;để tạo một đối tượng&nbsp;<em>datetime</em>&nbsp;chứa ngày và giờ cục bộ hiện tại.</p>

<p style="text-align: justify;"><strong>Ví dụ 2: Trả về ngày hiện tại</strong></p>

<pre id="pre2" style="text-align: justify;">
import datetime

date_object = datetime.date.today()
print(date_object)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre3">
<code>2022-12-23</code></pre>

<p style="text-align: justify;">Trong chương trình này, ta sử dụng lệnh&nbsp;<em>today()</em>&nbsp;được khai báo trong&nbsp;<em>class date</em>&nbsp;để lấy về kết quả ngày cục bộ hiện tại.</p>

<h2 id="mcetoc_1d5bgi3q51" style="text-align: justify;">Có gì bên trong datetime?</h2>

<p style="text-align: justify;">Bạn có thể sử dụng&nbsp;hàm&nbsp;<em>dir()</em>&nbsp;để hiển thị danh sách tất cả các thuộc tính của&nbsp;<strong>module datetime</strong>.</p>

<pre id="pre4" style="text-align: justify;">
import datetime

print(dir(datetime))</pre>

<p style="text-align: justify;">Chạy chương trình, kết quả trả về là:</p>

<pre id="pre5">
<code>&#91;&#039;MAXYEAR&#039;, &#039;MINYEAR&#039;, &#039;__builtins__&#039;, &#039;__cached__&#039;, &#039;__doc__&#039;, &#039;__file__&#039;, &#039;__loader__&#039;,
&#039;__name__&#039;, &#039;__package__&#039;, &#039;__spec__&#039;, &#039;date&#039;, &#039;datetime&#039;, &#039;datetime_CAPI&#039;, &#039;sys&#039;, &#039;time&#039;,
&#039;timedelta&#039;, &#039;timezone&#039;, &#039;tzinfo&#039;&#93;</code></pre>

<p style="text-align: justify;">Các lớp thường được sử dụng trong&nbsp;<strong>module datetime</strong>&nbsp;là:</p>

<ul>
	<li style="text-align: justify;"><em>Class date</em></li>
	<li style="text-align: justify;"><em>Class time</em></li>
	<li style="text-align: justify;"><em>Class datetime</em></li>
	<li style="text-align: justify;"><em>Class timedelta</em></li>
</ul>

<h2 id="mcetoc_1d5bgi3q52" style="text-align: justify;">Lớp datetime.date</h2>

<p style="text-align: justify;">Đối tượng của&nbsp;<strong>class date</strong>&nbsp;trả về kết quả&nbsp;<strong>thông tin ngày tháng</strong>&nbsp;(date), không bao gồm thông tin thời gian. Ngày tháng được truyền ở dạng ‘year, month, day’.</p>

<pre id="pre6" style="text-align: justify;">
import datetime

d = datetime.date(2022, 4, 12)
print(d)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre7">
<code>2022-04-12</code></pre>

<p style="text-align: justify;">Bạn cũng có thể cập nhật&nbsp;<em>class date</em>&nbsp;từ&nbsp;<strong>module datetime</strong>&nbsp;như này:</p>

<pre id="pre8" style="text-align: justify;">
from datetime import date

a = date(2022, 4, 12)
print(a)</pre>

<p style="text-align: justify;"><strong>Ví dụ 3: Cập nhật ngày hiện tại</strong></p>

<p style="text-align: justify;">Sử dụng phương thức<em>&nbsp;today()</em></p>

<pre id="pre9" style="text-align: justify;">
from datetime import date

today = date.today()
print(&quot;Ngay hien tai la:&quot;, today)</pre>

<p style="text-align: justify;"><strong>Ví dụ 4: Gọi ngày từ timestamp</strong></p>

<p style="text-align: justify;">Thời gian Unix (Unix timestamp) là hệ thống nhằm diễn tả một điểm trên trục thời gian, theo trục thời gian nó sử dụng số giây để xác định thời điểm, với điểm gốc từ thời điểm 00:00:00 ngày 1/1/1970 theo giờ UTC.</p>

<p style="text-align: justify;">Ví dụ lúc 00:00:00 - 12/02/2016 có giá trị timestamp là 1455235200; Có nghĩa là tính từ 00:00:00 - 1/1/1970 đến 00:00:00 - 12/02/2016 là 1455235200 giây.</p>

<p style="text-align: justify;">Và ở trong Python, bạn có thể tạo đối tượng ngày từ một&nbsp;<em>timestamp.</em></p>

<pre id="pre10" style="text-align: justify;">
from datetime import date

timestamp = date.fromtimestamp(1551916800)
print(&quot;Date =&quot;, timestamp)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre11">
<code>Date = 2019-03-07</code></pre>

<p style="text-align: justify;"><strong>Ví dụ 5: In ra ngày tháng năm hiện tại</strong></p>

<pre id="pre12" style="text-align: justify;">
from datetime import date

# viết bởi Quantrimang.com
today = date.today()

print(&quot;Nam hien tai:&quot;, today.year)
print(&quot;Thang hien tai:&quot;, today.month)
print(&quot;Ngay hien tai:&quot;, today.day)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre13">
<code>Nam hien tai: 2019
Thang hien tai: 3
Ngay hien tai: 7</code></pre>

<h2 id="mcetoc_1d5bgi3q53" style="text-align: justify;">Lớp datetime.time</h2>

<p style="text-align: justify;">Đối tượng của<em>&nbsp;class time</em>&nbsp;trả về kết quả<strong>&nbsp;thông tin thời gian</strong>&nbsp;(time) hiện tại, không bao gồm thông tin ngày tháng.</p>

<pre id="pre14" style="text-align: justify;">
from datetime import time

# time(hour = 0, minute = 0, second = 0)
a = time()
print(&quot;a =&quot;, a)

# time(hour, minute and second)
b = time(11, 34, 56)
print(&quot;b =&quot;, b)

# time(hour, minute and second)
# viet boi Quantrimang.com
c = time(hour = 11, minute = 34, second = 56)
print(&quot;c =&quot;, c)

# time(hour, minute, second, microsecond)
d = time(11, 34, 56, 234566)
print(&quot;d =&quot;, d)</pre>

<p style="text-align: justify;">Kết quả trả về là:</p>

<pre id="pre15">
<code>a = 00:00:00
b = 11:34:56
c = 11:34:56
d = 11:34:56.234566</code></pre>

<p style="text-align: justify;"><strong>Ví dụ 6: In ra giờ, phút, giây và micro giây</strong></p>

<pre id="pre16" style="text-align: justify;">
from datetime import time

a = time(11, 34, 56)

print(&quot;hour =&quot;, a.hour)
print(&quot;minute =&quot;, a.minute)
print(&quot;second =&quot;, a.second)
print(&quot;microsecond =&quot;, a.microsecond)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, output sẽ ở dạng:</p>

<pre id="pre17">
<code>hour = 11
minute = 34
second = 56
microsecond = 0</code></pre>

<p style="text-align: justify;">Ở ví dụ trên ta không truyền tham số cho micro giây nên giá trị trả về ở dạng mặc định là 0.</p>

<h2 id="mcetoc_1d5bgi3q54" style="text-align: justify;">Lớp datetime.datetime</h2>

<p style="text-align: justify;">Đối tượng của&nbsp;<em>class datetime</em>&nbsp;trả về kết quả bao gồm thông tin của&nbsp;<strong>cả thời gian và ngày tháng</strong>.</p>

<pre id="pre18" style="text-align: justify;">
from datetime import datetime

#datetime được truyền ở dạng &#039;year, month, day&#039;.
a = datetime(2019, 3, 7)
print(a)

# datetime được truyền ở dạng &#039;year, month, day, hour, minute, second, microsecond&#039;
b = datetime(2019, 3, 7, 23, 55, 59, 342380)
print(b)</pre>

<p style="text-align: justify;">Chạy chương trình ta được kết quả:</p>

<pre id="pre19">
<code>2019-03-07 00:00:00
2019-03-07 23:55:59.342380</code></pre>

<p style="text-align: justify;">3 tham số đầu tiên &#039;year, month, day&#039; là bắt buộc.</p>

<div style="text-align: justify;">&nbsp;</div>

<p style="text-align: justify;"><strong>Ví dụ 7: In ra năm, tháng, giờ, phút, timestamp</strong></p>

<pre id="pre20" style="text-align: justify;">
from datetime import datetime

a = datetime(2019, 3, 7, 23, 55, 59, 342380)
print(&quot;year =&quot;, a.year)
print(&quot;month =&quot;, a.month)
print(&quot;hour =&quot;, a.hour)
print(&quot;minute =&quot;, a.minute)
print(&quot;timestamp =&quot;, a.timestamp())</pre>

<p style="text-align: justify;">Kết quả trả về là:</p>

<pre id="pre21">
<code>year = 2019
month = 3
hour = 23
minute = 55
timestamp = 1551977759.34238</code></pre>

<h2 id="mcetoc_1d5bgi3q55" style="text-align: justify;">Lớp datetime.timedelta</h2>

<p style="text-align: justify;"><em>Timedelta</em>&nbsp;là một&nbsp;<strong>khoảng thời gian mô tả sự khác biệt giữa 2 mốc thời gian</strong>.</p>

<pre id="pre22" style="text-align: justify;">
from datetime import datetime, date

# khoảng thời gian chênh lệch giữa 2 ngày tháng
t1 = date(year = 2018, month = 7, day = 12)
t2 = date(year = 2017, month = 12, day = 23)
t3 = t1 - t2
print(&quot;t3 =&quot;, t3)

t4 = datetime(year = 2018, month = 7, day = 12, hour = 7, minute = 9, second = 33)
t5 = datetime(year = 2019, month = 6, day = 10, hour = 5, minute = 55, second = 13)
t6 = t4 - t5
print(&quot;t6 =&quot;, t6)</pre>

<p style="text-align: justify;">Kết quả trả về là:</p>

<pre id="pre23">
<code>t3 = 201 days, 0:00:00
t6 = -333 days, 1:14:20</code></pre>

<p style="text-align: justify;"><em>t3 và t6</em>&nbsp;ở đây đều là đối tượng&nbsp;<em>timedelta</em></p>

<p style="text-align: justify;"><strong>Ví dụ 8: Khoảng thời gian chênh lệch giữa 2 đối tượng timedelta</strong></p>

<pre id="pre24" style="text-align: justify;">
from datetime import timedelta

t1 = timedelta(weeks = 2, days = 5, hours = 1, seconds = 33)
t2 = timedelta(days = 4, hours = 11, minutes = 4, seconds = 54)
t3 = t1 - t2

print(&quot;t3 =&quot;, t3)</pre>

<p style="text-align: justify;">Chạy chương trình, ta được output như sau:</p>

<pre id="pre25">
<code>t3 = 14 days, 13:55:39</code></pre>

<p style="text-align: justify;"><strong>Ví dụ 9: Xử lý timedelta mang giá trị âm</strong></p>

<div style="text-align: justify;">Thiết bị mạng</div>

<pre id="pre26" style="text-align: justify;">
from datetime import timedelta

t1 = timedelta(seconds = 33)
t2 = timedelta(seconds = 54)
t3 = t1 - t2

print(&quot;t3 =&quot;, t3)
print(&quot;t3 =&quot;, abs(t3))</pre>

<p style="text-align: justify;">Kết quả thu được là:</p>

<pre id="pre27">
<code>t3 = -1 day, 23:59:39
t3 = 0:00:21</code></pre>

<p style="text-align: justify;"><strong>Ví dụ 10: Chuyển khoảng thời gian chênh lệch timedelta về dạng tổng số giây</strong></p>

<p style="text-align: justify;">Bạn có thể chuyển kết quả về dạng tổng số giây bằng phương thức&nbsp;<em>Total_seconds().</em></p>

<pre id="pre28" style="text-align: justify;">
from datetime import timedelta

t = timedelta(days = 5, hours = 1, seconds = 33, microseconds = 233423)
print(&quot;tong so giay =&quot;, t.total_seconds())</pre>

<p style="text-align: justify;">Ta được kết quả:</p>

<pre id="pre29">
<code>Tong so giay = 435633.233423</code></pre>

<p style="text-align: justify;"><strong>Các toán tử hỗ trợ timedelta:</strong></p>

<ul>
	<li style="text-align: justify;"><strong><em>t1 = t2 + t3</em></strong><br />
	t2 = (hours = 8, seconds= 12)<br />
	t3 = (hours = 2, minutes = 3)<br />
	&gt;&gt;&gt; t1 = (hours= 10, minutes = 3, seconds = 12)</li>
	<li style="text-align: justify;"><strong><em>t1 = t2 - t3</em></strong><br />
	t2 = (hours = 12, seconds= 2)<br />
	t3 = (hours = 1, minutes = 4)<br />
	&gt;&gt;&gt; t1 = (hours= 11, minutes = 56, seconds = 2)</li>
	<li style="text-align: justify;"><em><strong>t1 = t2 * i</strong></em><br />
	<em><strong>t1 = i * t2</strong></em><br />
	t2 = (hours = 10, seconds= 2)<br />
	i = 3<br />
	&gt;&gt;&gt; t1 = (days =1, hours = 6, seconds= 6)</li>
	<li style="text-align: justify;"><strong><em>t1 = t2</em></strong><br />
	t2 = (hours = 25, seconds= 2)<br />
	&gt;&gt;&gt; t1 = (days: 1, hours: 1, seconds: 2)</li>
	<li style="text-align: justify;"><strong><em>+t1</em></strong><br />
	Trả về t1</li>
	<li style="text-align: justify;"><em><strong>-t1</strong></em><br />
	t1 = (hours = 10, seconds= 2)<br />
	&gt;&gt;&gt; -t1 = (days = -1, hours = 13, minutes = 59, seconds= 58)</li>
	<li style="text-align: justify;"><em><strong>abs(t)</strong>:</em>&nbsp;Giá trị tuyệt đối, tương đương với +t khi t.days &gt;= 0, và là -t khi t.days &lt; 0.<br />
	t = (hours= -25, minutes = 3)<br />
	&gt;&gt;&gt; t = (days = -2, hours = 23, minutes = 3)<br />
	&gt;&gt;&gt; abs(t) = (days = 1, hours = 0, minutes = 57)</li>
	<li style="text-align: justify;"><em><strong>str(t)</strong>:</em>&nbsp;Trả về string theo mẫu &#91;D day&#91;s&#93;, &#93;&#91;H&#93;H:MM:SS&#91;.UUUUUU&#93;, D có thể nhận giá trị âm.</li>
	<li style="text-align: justify;"><em><strong>repr(t)</strong>:</em>&nbsp;Trả về string theo mẫu datetime.timedelta(D&#91;, S&#91;, U&#93;&#93;), D có thể nhận giá trị âm</li>
</ul>

<h2 id="mcetoc_1d5bgi3q56" style="text-align: justify;">Định dạng thời gian Python</h2>

<p style="text-align: justify;">Ngày tháng và thời gian được sử dụng ở những dạng khác nhau, Mỹ sử dụng định dạng&nbsp;<em>mm/dd/yyyy</em>, trong khi&nbsp;<em>dd/mm/yyyy</em>&nbsp;phổ biến hơn ở Anh.</p>

<p style="text-align: justify;">Python có các phương thức&nbsp;<em>strftime()</em>&nbsp;và&nbsp;<em>strptime()</em>&nbsp;để xử lý việc này.</p>

<h3 id="mcetoc_1d5bgi3q57" style="text-align: justify;"><strong>strftime() - định dạng thời gian thành một string.</strong></h3>

<p style="text-align: justify;"><strong>Ví dụ 11: Định dạng ngày tháng sử dụng strftime()</strong></p>

<pre id="pre30" style="text-align: justify;">
from datetime import datetime

# ngày giờ hiện tại
now = datetime.now()

t = now.strftime(&quot;%H:%M:%S&quot;)
print(&quot;time:&quot;, t)

s1 = now.strftime(&quot;%m/%d/%Y, %H:%M:%S&quot;)
# định dạng mm/dd/YY H:M:S
print(&quot;s1:&quot;, s1)

s2 = now.strftime(&quot;%d/%m/%Y, %H:%M:%S&quot;)
# định dạng dd/mm/YY H:M:S
print(&quot;s2:&quot;, s2)</pre>

<div style="text-align: justify;">&nbsp;</div>

<p style="text-align: justify;">Chương trình trả về kết quả là:</p>

<pre id="pre31">
<code>time: 04:34:52
s1: 03/07/2019, 04:34:52
s2: 07/03/2019, 04:34:52</code></pre>

<p style="text-align: justify;">Ở đây&nbsp;<em>%Y, %m, %d, %H</em>... là các tham số định dạng. Phương thức&nbsp;<em>strftime()</em>&nbsp;sử dụng để trả về một chuỗi được định dạng dựa trên các tham số đó.</p>

<p style="text-align: justify;">Phạm vi tham số:</p>

<ul>
	<li style="text-align: justify;">%Y - year &#91;0001,..., 2018, 2019,..., 9999&#93;</li>
	<li style="text-align: justify;">%m - month &#91;01, 02, ..., 11, 12&#93;</li>
	<li style="text-align: justify;">%d - day &#91;01, 02, ..., 30, 31&#93;</li>
	<li style="text-align: justify;">%H - hour &#91;00, 01, ..., 22, 23</li>
	<li style="text-align: justify;">%M - month &#91;00, 01, ..., 58, 59&#93;</li>
	<li style="text-align: justify;">%S - second &#91;00, 01, ..., 58, 59&#93;</li>
</ul>

<h3 id="mcetoc_1d5bgi3q58" style="text-align: justify;"><strong>strptime() - phân tích một string thành thời gian</strong></h3>

<p style="text-align: justify;">Định dạng code</p>

<table cellpadding="2" cellspacing="2">
	<tbody>
		<tr>
			<td>
			<p style="text-align: justify;"><strong>Định dạng code</strong></p>
			</td>
			<td>
			<p style="text-align: justify;"><strong>Ý nghĩa</strong></p>
			</td>
			<td>
			<p style="text-align: justify;"><strong>Ví dụ</strong></p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%a</p>
			</td>
			<td>
			<p style="text-align: justify;">Viết tắt tên ngày trong tuần</p>
			</td>
			<td>
			<p style="text-align: justify;">Sun, Mon</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%A</p>
			</td>
			<td>
			<p style="text-align: justify;">Tên đầy đủ các ngày trong tuần</p>
			</td>
			<td>
			<p style="text-align: justify;">Sunday, Monday</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%w</p>
			</td>
			<td>
			<p style="text-align: justify;">Ngày trong tuần dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">0…6</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%d</p>
			</td>
			<td>
			<p style="text-align: justify;">Ngày trong tháng dưới dạng số thập phân không đệm</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 02</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-d</p>
			</td>
			<td>
			<p style="text-align: justify;">Ngày trong tháng dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 2..</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%b</p>
			</td>
			<td>
			<p style="text-align: justify;">Tên tháng được viết tắt</p>
			</td>
			<td>
			<p style="text-align: justify;">Jan, Feb</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%m</p>
			</td>
			<td>
			<p style="text-align: justify;">Tháng dưới dạng số thập phân có phần đệm là 0</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 02</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-m</p>
			</td>
			<td>
			<p style="text-align: justify;">Tháng dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 2</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%B</p>
			</td>
			<td>
			<p style="text-align: justify;">Tên tháng đầy đủ</p>
			</td>
			<td>
			<p style="text-align: justify;">January, February</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%y</p>
			</td>
			<td>
			<p style="text-align: justify;">Năm không có thể kỷ được viết dưới dạng số thập phân có phần đệm là 0</p>
			</td>
			<td>
			<p style="text-align: justify;">99, 00</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-y</p>
			</td>
			<td>
			<p style="text-align: justify;">Năm không có thế kỷ được viết dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">0, 99</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%Y</p>
			</td>
			<td>
			<p style="text-align: justify;">Năm có thế kỷ dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">2000, 1999</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%H</p>
			</td>
			<td>
			<p style="text-align: justify;">Viết giờ dưới dạng số thập phân bắt đầu bằng 0</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 23</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-H</p>
			</td>
			<td>
			<p style="text-align: justify;">Giờ dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 23</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%I</p>
			</td>
			<td>
			<p style="text-align: justify;">Giờ dưới dạng số thập phân bắt đầu bằng 0</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 12</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-I</p>
			</td>
			<td>
			<p style="text-align: justify;">Giờ dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 12</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%p</p>
			</td>
			<td>
			<p style="text-align: justify;">AM hoặc PM theo ngôn ngữ</p>
			</td>
			<td>
			<p style="text-align: justify;">AM, PM</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%M</p>
			</td>
			<td>
			<p style="text-align: justify;">Phút dưới dạng số thập phân bắt đầu bằng 0</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 59</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-M</p>
			</td>
			<td>
			<p style="text-align: justify;">Phút dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 59</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%S</p>
			</td>
			<td>
			<p style="text-align: justify;">Giây dưới dạng số thập phân bắt đầu bằng 0</p>
			</td>
			<td>
			<p style="text-align: justify;">01, 59</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-S</p>
			</td>
			<td>
			<p style="text-align: justify;">Giây dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 59</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%f</p>
			</td>
			<td>
			<p style="text-align: justify;">micro giây dưới dạng số thập phân, số 0 được đệm ở bên trái</p>
			</td>
			<td>
			<p style="text-align: justify;">000000, 999999</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%z</p>
			</td>
			<td>
			<p style="text-align: justify;">UTC offset ở dạng +HHMM hoặc -HHMM</p>
			</td>
			<td>
			<p style="text-align: justify;">&nbsp;</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%Z</p>
			</td>
			<td>
			<p style="text-align: justify;">Tên múi giờ</p>
			</td>
			<td>
			<p style="text-align: justify;">&nbsp;</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%j</p>
			</td>
			<td>
			<p style="text-align: justify;">Ngày trong năm dưới dạng số thập phân có phần đầu là 0</p>
			</td>
			<td>
			<p style="text-align: justify;">001, 365</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%-j</p>
			</td>
			<td>
			<p style="text-align: justify;">Ngày trong năm dưới dạng số thập phân</p>
			</td>
			<td>
			<p style="text-align: justify;">1, 365</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%U</p>
			</td>
			<td>
			<p style="text-align: justify;">Số tuần trong năm (Ngày đầu tiên là Chủ Nhật)</p>
			</td>
			<td>
			<p style="text-align: justify;">0, 6</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%W</p>
			</td>
			<td>
			<p style="text-align: justify;">Số tuần trong năm</p>
			</td>
			<td>
			<p style="text-align: justify;">00, 53</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%c</p>
			</td>
			<td>
			<p style="text-align: justify;">Biểu thị ngày và giờ theo ngôn ngữ</p>
			</td>
			<td>
			<p style="text-align: justify;">Mon Sep 30 07:06:05 2013</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%x</p>
			</td>
			<td>
			<p style="text-align: justify;">Biểu thị ngày tháng tương ứng theo ngôn ngữ</p>
			</td>
			<td>
			<p style="text-align: justify;">11/30/98</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%X</p>
			</td>
			<td>
			<p style="text-align: justify;">Biểu thị thời gian phù hợp theo ngôn ngữ</p>
			</td>
			<td>
			<p style="text-align: justify;">10:03:43</p>
			</td>
		</tr>
		<tr>
			<td>
			<p style="text-align: justify;">%%</p>
			</td>
			<td>
			<p style="text-align: justify;">Ký tự theo nghĩa đen</p>
			</td>
			<td>
			<p style="text-align: justify;">%</p>
			</td>
		</tr>
	</tbody>
</table>

<pre id="pre32" style="text-align: justify;">
from datetime import datetime

date_string = &quot;7 March, 2019&quot;
print(&quot;date_string =&quot;, date_string)

date_object = datetime.strptime(date_string, &quot;%d %B, %Y&quot;)
print(&quot;date_object =&quot;, date_object)</pre>

<p style="text-align: justify;">Khi bạn chạy chương trình, kết quả trả về là:</p>

<pre id="pre33">
<code>date_string = 7 March, 2019
date_object = 2019-03-07 00:00:00</code></pre>

<h2 style="text-align: justify;">Python DateTime.tzinfo()</h2>

<p style="text-align: justify;">Hàm datetime.now() không chứa thông tin nào liên quan đến múi giờ. Nó chỉ sử dụng thời gian hệ thống hiện tại. Tzinfo là một lớp cơ sở trừu tượng trong Python. Nó không thể được khởi tạo trực tiếp. Một lớp con cụ thể phải bắt nguồn từ lớp trừu tượng này và triển khai các phương thức do nó cung cấp.</p>

<p style="text-align: justify;"><strong>Danh sách đối tượng DateTime.tzinfo() trong Python</strong></p>

<table cellpadding="1" cellspacing="1">
	<tbody>
		<tr>
			<td width="350">
			<p style="text-align: justify;"><strong>Tên hàm</strong></p>
			</td>
			<td width="350">
			<p style="text-align: justify;"><strong>Mô tả</strong></p>
			</td>
		</tr>
		<tr>
			<td width="350">
			<p style="text-align: justify;">dst()</p>
			</td>
			<td width="350">
			<p style="text-align: justify;">Trả về tzinfo.dst() là tzinfo không phải là None</p>
			</td>
		</tr>
		<tr>
			<td width="350">
			<p style="text-align: justify;">fromutc()</p>
			</td>
			<td width="350">
			<p style="text-align: justify;">Mục đích của hàm này là điều chỉnh dữ liệu ngày giờ,</p>

			<p style="text-align: justify;">trả về DateTime tương đương theo giờ địa phương của chính nó.</p>
			</td>
		</tr>
		<tr>
			<td width="350">
			<p style="text-align: justify;">tzname()</p>
			</td>
			<td width="350">
			<p style="text-align: justify;">Trả về tzinfo.tzname() là tzinfo không phải là None</p>
			</td>
		</tr>
		<tr>
			<td width="350">
			<p style="text-align: justify;">utcoffset()</p>
			</td>
			<td width="350">
			<p style="text-align: justify;">Trả về tzinfo.utcffsets() là tzinfo không phải là None</p>
			</td>
		</tr>
	</tbody>
</table>

<p style="text-align: justify;"><strong>Ví dụ:</strong></p>

<pre id="pre34" style="text-align: justify;">
import datetime as dt
from dateutil import tz
tz_string = dt.datetime.now(dt.timezone.utc).astimezone().tzname()

print(&quot;datetime.now() :&quot;, tz_string)

NYC = tz.gettz(&#039;Europe / Berlin&#039;)
dt1 = dt.datetime(2022, 5, 21, 12, 0)
dt2 = dt.datetime(2022, 12, 21, 12, 0, tzinfo=NYC)

print(&quot;Naive Object :&quot;, dt1.tzname())
print(&quot;Aware Object :&quot;, dt2.tzname())</pre>

<p style="text-align: justify;"><strong>Kết quả:</strong></p>

<pre id="pre35" style="text-align: justify;">
datetime.now() : IST
Naive Object : None
Aware Object : None</pre>

<h2 id="mcetoc_1d5bgi3q59" style="text-align: justify;">Hiển thị múi giờ trong Python</h2>

<p style="text-align: justify;">Giả sử, bạn đang làm việc trên một dự án và cần hiển thị ngày giờ dựa trên múi giờ mình cần. Thay vì cố gắng tự search và tìm kiếm múi giờ, bạn nên sử dụng&nbsp;<strong>module pytZ</strong>&nbsp;như sau:</p>

<pre id="pre36" style="text-align: justify;">
from datetime import datetime
import pytz

local = datetime.now()
print(&quot;Local:&quot;, local.strftime(&quot;%m/%d/%Y, %H:%M:%S&quot;))

tz_NY = pytz.timezone(&#039;America/New_York&#039;)
datetime_NY = datetime.now(tz_NY)
print(&quot;NY:&quot;, datetime_NY.strftime(&quot;%m/%d/%Y, %H:%M:%S&quot;))

tz_London = pytz.timezone(&#039;Europe/London&#039;)
datetime_London = datetime.now(tz_London)
print(&quot;London:&quot;, datetime_London.strftime(&quot;%m/%d/%Y, %H:%M:%S&quot;))</pre>

<div style="text-align: justify;">&nbsp;</div>

<p style="text-align: justify;">Chạy chương trình, kết quả trả về là:</p>

<pre id="pre37">
<code>Local time: 2019-03-07 13:10:44.260462
America/New_York time: 2019-03-07 13:10:44.260462
Europe/London time: 2019-03-07 13:10:44.260462</code></pre>

<p style="text-align: justify;">Ở ví dụ này,&nbsp;<em>datetime_NY</em>&nbsp;và&nbsp;<em>datetime_London</em>&nbsp;là các đối tượng&nbsp;<em>datetime</em>&nbsp;chứa ngày và giờ hiện tại của múi giờ tương ứng.</p>

<h2 style="text-align: justify;">Lựa chọn thay thế datetime trong Python</h2>

<p style="text-align: justify;">Có nhiều thư viện ngày tháng tương tự như datetime, bạn có thể dùng trong Python, bao gồm:</p>

<ul>
	<li style="text-align: justify;"><strong>Arrow</strong>&nbsp;cung cấp một công cụ thay thế trực tiếp cho DateTime. Nó được lấy cảm hứng từ Moment.js, vì vậy nếu bạn đến từ lĩnh vực phát triển web, thì đây có thể là một giao diện quen thuộc hơn.</li>
	<li style="text-align: justify;"><strong>Pendulum</strong>&nbsp;cung cấp một công cụ thay thế trực tiếp khác cho DateTime. Nó bao gồm giao diện múi giờ và triển khai timedelta được cải tiến.</li>
	<li style="text-align: justify;"><strong>Maya&nbsp;</strong>cung cấp một giao diện tương tự như DateTime. Nó dựa vào Pendulum cho một số phần của thư viện phân tích cú pháp.</li>
	<li style="text-align: justify;"><strong>dateparser</strong>&nbsp;cung cấp một giao diện để tạo các thể hiện DateTime từ văn bản dễ đọc. Nó linh hoạt và hỗ trợ nhiều ngôn ngữ.</li>
</ul>

<div style="text-align: justify;">&nbsp;</div>
		</div>
				<div id="author">
						<p>
				<strong>Nguồn tin:</strong>
				Quantrimang.com:
			</p>
		</div>
	</div>
	<div id="footer" class="clearfix">
		<div id="url">
			<strong>URL của bản tin này: </strong><a href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/datetime-trong-python-11235.html" title="Datetime trong Python">https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/datetime-trong-python-11235.html</a>

		</div>
		<div class="clear"></div>
		<div class="copyright">
			&copy; .&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.
		</div>
		<div id="contact">
			<a href="mailto:admin@nguoicodonvn2008.info">admin@nguoicodonvn2008.info</a>
		</div>
	</div>
</div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng Site, <a onclick="timeoutsesscancel();" href="https://www.nguoicodonvn2008.info/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
		</script>
		<div class="car-top">
  <span><img src="https://www.nguoicodonvn2008.info/themes/default/images/car.png" alt=""></span>
</div>
<script src="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="news",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4c_e856T",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=0,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",XSSsanitize=1;</script>
<script src="https://www.nguoicodonvn2008.info/assets/js/language/vi.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/global.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/site.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/news.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/main.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/custom.js"></script>
<script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Organization",
            "url": "https://www.nguoicodonvn2008.info",
            "logo": "https://www.nguoicodonvn2008.info/uploads/angel.gif"
        }
        </script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js"></script>
<script type="text/javascript">
var $scrolltop = $('.car-top');
$scrolltop.on('click', function () {
    $('html,body').animate({
        scrollTop: 0
    }, 800);
    $(this).addClass("car-run");
    setTimeout(function(){ $scrolltop.removeClass('car-run');}, 1000);
    return false;
});
$(window).on('scroll', function ()
{ 
    if($(window).scrollTop() >= 200)
    {
        $scrolltop.addClass("show");
        $scrolltop.addClass("car-down");
    }
    else
    {
       $scrolltop.removeClass("show");
       setTimeout(function(){ $scrolltop.removeClass('car-down');}, 300);
    }
});
</script>
</body>
</html>