Hướng dẫn reversed python

Hướng dẫn tất cả cách đảo ngược list trong python. Bạn sẽ học được tất cả cách đảo ngược list trong python bằng cách sử dụng phương thức reverse(), hàm reverse trong python cũng như bằng cách cắt (slice) list python sau bài học này.

Chúng ta có 3 phương pháp để đảo ngược list trong python như sau:

  • Phương thức reverse() : đảo ngược list ban đầu trong python
  • Cắt (slice) list : Đảo ngược list và tạo ra một list mới
  • Hàm reverse trong python : Đảo ngược list và tạo ra một trình lặp

Chúng ta sẽ cùng tìm hiểu các phương pháp này ở dưới đây:

Đảo ngược list ban đầu trong python| Phương thức reverse()

Phương thức reverse() trong python sẽ đảo ngược thứ tự các phần tử trong list ban đầu. Đây là một quá trình tự phá hủy (Destructive processing) và tái tạo lại list ban đầu với các phần tử theo thứ tự ngược lại.

Chúng ta sử dụng Phương thức reverse() trong python với cú pháp sau đây:

orinary_list . reverse ()

Trong đó orinary_list là list ban đầu cần đảo ngược lại.

Ví dụ, chúng ta dùng Phương thức reverse() để đảo ngược một dãy số trong python như sau:

orinary_list = [1, 2, 3, 4, 5]

orinary_list.reverse()
print(orinary_list)

Tương tự chúng ta sử dụng reverse() để đảo ngược list trong python phần tử là chuỗi như sau:

mylist = ['Ali' , 'Bob' , 'Eva' , 'Adam']
mylist.reverse()
print(mylist)

Lưu ý, sau khi thực hiện phương thức reverse() thì list ban đầu sẽ bị thay đổi, nhưng bản thân phương thức reverse() sẽ trả về giá trị None như sau:

print(org_list.reverse())

Nếu không biết kết quả trả về của phương thức reverse() là None, bạn rất dễ mắc lỗi logic trong chương trình. Ví dụ như khi muốn in ra list đảo ngược trong python, thay vì in list đã được đảo ngược bằng reverse() thì bạn lại in ra kết quả của phương thức reverse() như sau:

l = ['a' , 'b', 'c']


print(l.reverse())



l.reverse()
print(l)

Đảo ngược list và tạo ra một list mới trong python | Cắt (slice) list

Chúng ta cũng có thể ứng dụng chức năng cắt (slice) list để đảo ngược list trong python.
Nếu chúng ta chỉ định đối số step = -1 khi Cắt (slice) list trong python , list được cắt ra sẽ có thứ tự ngược lại với list ban đầu. Lợi dụng tính chất này, chúng ta có thể đảo ngược list trong python như ví dụ sau:

orinary_list = [1, 2, 3, 4, 5]
new_list = orinary_list[::-1]

print(org_list)
print(new_list)


Lưu ý là khác với phương thức resort() ở trên, khi cắt (slice) list chúng ta sẽ tạo ra một list mới có phần tử ngược lại với list ban đầu, còn bản thân list ban đầu thì không bị thay đổi.

Đảo ngược list và tạo ra trình lặp trong python | hàm reversed trong python

Hàm reversed trong python là một hàm cài đặt sẵn trong python, có chức năng lấy các phần tử trong list chỉ định và tạo ra một trình lặp với thứ tự các phần tử trong đó ngược lại với list ban đầu.

Kết hợp sử dụng hàm list() trong python, chúng ta có thể chuyển trình lặp - kết quả của hàm reversed() thành một list mới, với thứ tự phần tử ngược với list ban đầu.

Chúng ta sử dụng hàm reversed() trong python với cú pháp sau đây:

list_iterator = reversed ( orginary_list )

Trong đó orginary_list là list ban đầu cần đảo thứ tự và list_iterator là trình lặp được tạo ra.

Ví dụ cụ thể:

orginary_list = ['a' , 'b', 'c' , 'd' , 'e']
print(orginary_list)


list_iterator = reversed(orginary_list)
print(list_iterator)

Lưu ý là hàm reversed() sẽ trả về một trình lặp chứ không phải là một list. Do đó khi in trình lặp ra thì kết quả sẽ như ở trên. Để lấy và in ra các phần tử trong trình lặp, chúng ta cần phải dùng vòng lặp for như sau:

for i in list_iterator:
print(i)





Kết hợp với hàm list() trong python, chúng ta có thể biến trình lặp ở trên thành một list mới có thứ tự phần tử ngược lại với list ban đầu như sau:

new_list = list(list_iterator)
print(new_list)

Một cách tổng quát, chúng ta đảo ngược list trong python bằng hàm reversed() với cách viết như sau:

orginary_list = ['a' , 'b', 'c' , 'd' , 'e']
new_list = list(reversed(orginary_list))

print(orginary_list)
print(new_list)


Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn cách đảo ngược list trong python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.

Viết bởi Kiyoshi. Đã đăng ký bản quyền tác giả tại <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" rel="license noopener" target="_blank" href="https://creativecommons.org/licenses/by-nc-nd/4.0/">Creativecommons</a>&nbsp;và <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" target="_blank" rel="noopener" href="https://www.dmca.com/Protection/Status.aspx?ID=1631afcd-7c4a-467d-8016-402c5073e5cd" class="dmca-badge">DMCA</a><script src="https://images.dmca.com/Badges/DMCABadgeHelper.min.js"></script></p><h3 style="font-size:15px">Bài viết liên quan</h3><ul class="popular-posts"><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/append-trong-python/" title="Phương thức append trong python" rel="bookmark">Phương thức append trong python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/cat-lat-list-trong-python/" title="Cắt (slice) list trong python" rel="bookmark">Cắt (slice) list trong python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/chen-phan-tu-vao-list-trong-python/" title="Chèn phần tử vào list python (insert, slice)" rel="bookmark">Chèn phần tử vào list python (insert, slice)</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/chuyen-string-sang-list-trong-python/" title="Chuyển string sang list trong Python" rel="bookmark">Chuyển string sang list trong Python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/dem-so-phan-tu-trong-list-python/" title="Đếm số phần tử trong list Python" rel="bookmark">Đếm số phần tử trong list Python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/extend-trong-python/" title="Phương thức extend trong python" rel="bookmark">Phương thức extend trong python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/khoi-tao-list-trong-python/" title="Tạo list trong python" rel="bookmark">Tạo list trong python</a></h3></div></li><li class="popular-posts-item"><div class="popular-posts-title"><h3><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/kiem-tra-va-lay-phan-tu-trung-nhau-trong-list-python/" title="Kiểm tra và lấy phần tử trùng nhau trong list python" rel="bookmark">Kiểm tra và lấy phần tử trùng nhau trong list python</a></h3></div></li></ul></div><div id="keugoi"><span>Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!</span></div><section class="icon-bar-2" style="border-bottom:dotted grey .3px!important"><a target="_blank" title="chia sẻ qua facebook" rel="noopener noreferrer" href="https://www.facebook.com/sharer/sharer.php?u=https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/dao-nguoc-list-python/" class="facebook"><i class="fa fa-facebook"></i></a> <a target="_blank" rel="noopener noreferrer" href="https://twitter.com/intent/tweet?url=https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/dao-nguoc-list-python/" title="chia sẻ qua twitter" class="twitter"><i class="fa fa-twitter"></i></a> <a target="_blank" rel="noopener noreferrer" href="https://getpocket.com/edit?url=https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/dao-nguoc-list-python/" title="chia sẻ qua pocket" class="pocket"><i class="fa fa-get-pocket"></i></a> <span class="zalo-share-button" title="chia sẻ qua zalo" style="margin-left:18px;margin-bottom:-3px" data-href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/dao-nguoc-list-python/" data-oaid="579745863508352884" data-layout="3" data-color="blue" data-customize="false"></span></section><p class="ico-folder"><a target="_blank" href="https://laptrinhcanban.com/"><span itemprop="HOME">HOME</span></a><span class="sya"></span>&gt;&gt; <a target="_blank" class="article-category-link" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/">python cơ bản - lập trình python cho người mới bắt đầu</a>&gt;&gt;<a target="_blank" class="article-category-link" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/">10. list trong python</a></p><nav id="article-nav"><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/kiem-tra-va-lay-phan-tu-trung-nhau-trong-list-python/" id="article-nav-older" class="article-nav-link-wrap" style="float:left;text-align:right;padding-right:20px"><strong class="article-nav-caption">Bài sau</strong><div class="article-nav-title">Kiểm tra và lấy phần tử trùng nhau trong list python</div></a><a target="_blank" href="https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/tim-max-min-trong-list-python/" id="article-nav-newer" class="article-nav-link-wrap" style="float:right;text-align:left;padding-left:20px"><strong class="article-nav-caption">Bài tiếp</strong><div class="article-nav-title">Tìm max() min() và cách tính tổng các phần tử trong list Python</div></a><span id="ezoic-pub-ad-placeholder-611" class="ezoic-adpicker-ad"></span></nav><div id="recent_posts_down"><div class="widget_athemes_tabs"><ul id="widget-tab" class="clearfix widget-tab-nav"><li class="active">Bài viết mới nhất</li></ul><div class="widget"><ul><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/lam-tron-so-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban46.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/lam-tron-so-trong-javascript/">Làm tròn số trong JavaScript (Math.round, Math.ceil, Math.floor)</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/so-mu-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban45.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/so-mu-trong-javascript/">Số mũ trong JavaScript (Math.pow, Math.exp)</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/math-max-math-min-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban44.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/math-max-math-min-trong-javascript/">Math.max và Math.min trong JavaScript</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/math-random-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban43.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/math-object-trong-javascript/math-random-trong-javascript/">Math.random trong JavaScript</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/throw-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban42.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/throw-trong-javascript/">throw trong JavaScript và cách trả về ngoại lệ tuỳ ý</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/cac-ngoai-le-trong-javascript-va-cach-xu-ly/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban41.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/cac-ngoai-le-trong-javascript-va-cach-xu-ly/">Các ngoại lệ trong JavaScript và cách xử lý tương ứng</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/try-catch-trong-javascript/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban40.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/try-catch-trong-javascript/">try...catch trong JavaScript và cách xử lý ngoại lệ</a></span> <span>tháng 7 1, 2022</span></div></li><li class="clearfix"><div class="widget-entry-thumbnail"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/xu-ly-ngoai-le-cua-ham-xu-ly-mo-ta-trong-khoi-try/"><img width="60px" height="60px" class="ezlazyload attachment-thumb-small size-thumb-small wp-post-image" alt="" ezimgfmt="rs rscb2 src ng ngcb2" data-ezsrc="/css/images/thumbnail_img/laptrinhcanban39.webp"></a></div><div class="widget-entry-summary"><span style="margin:0"><a target="_blank" href="https://laptrinhcanban.com/javascript/javascript-co-ban-den-nang-cao/xu-ly-ngoai-le-trong-javascript/xu-ly-ngoai-le-cua-ham-xu-ly-mo-ta-trong-khoi-try/">Xử lý ngoại lệ của hàm xử lý mô tả trong khối try</a></span> <span>tháng 7 1, 2022</span></div></li></ul></div></div></div><footer class="entry-meta entry-footer"></footer><hr class="entry-footer-hr"></div><span class="ezoic-autoinsert-ad ezoic-longest_content"></span><div id="profiletitle2">Profile</div><div id="profileblock2"><div id="profilephoto2"><a target="_blank" rel="noopener" href="https://www.facebook.com/mr.nchita"><img width="100" height="100" alt="きよしです!笑" ezimgfmt="rs rscb2 src ng ngcb2" class="ezlazyload" data-ezsrc="/css/images/kiyoshi.webp"></a></div><div id="profiletext2"><p>Tác giả : <a href="https://www.facebook.com/mr.nchita" target="_blank" rel="nofollow noopener">Kiyoshi (Chis Thanh)</a></p><p>Kiyoshi là một <a href="https://www.youtube.com/c/ChisThanh" target="_blank" rel="nofollow noopener">cựu du học sinh tại Nhật Bản</a>. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.<span id="ezoic-pub-ad-placeholder-196" class="ezoic-adpicker-ad"></span></p></div></div></div></article><aside id="sidebar"><div id="sidebar_first"><span class="ezoic-autoinsert-ad ezoic-sidebar"></span><div class="search" style="margin-top:-30px"><div id="fb-root"></div><script async defer crossorigin="anonymous" src="https://connect.facebook.net/vi_VN/sdk.js#xfbml=1&version=v12.0&appId=3084959888222500&autoLogAppEvents=1" nonce="KPkvxeh4"></script><div class="fb-page" style="margin-left:30px" data-href="https://www.facebook.com/laptrinhkiyoshi" data-width="380" data-hide-cover="false" data-show-facepile="false"></div><script async src="https://cse.google.com/cse.js?cx=8a4ac28a22903209e"></script><div class="gcse-search"></div></div><span id="ezoic-pub-ad-placeholder-145"></span><span class="ezoic-ad ezoic-at-0 box-1 box-1145 adtester-container adtester-container-145 ezoic-ad-adaptive" data-ez-name="laptrinhcanban_com-box-1"><span class="ezoic-ad box-1 box-1-multi-145 adtester-container adtester-container-145" data-ez-name="laptrinhcanban_com-box-1"><span id="div-gpt-ad-laptrinhcanban_com-box-1-0" ezaw="300" ezah="262" style="position:relative;z-index:0;display:inline-block;padding:0;min-height:262px;min-width:300px" class="ezoic-ad"><script data-ezscrex="false" data-cfasync="false" type="text/javascript" style="display:none">if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'laptrinhcanban_com-box-1','ezslot_4',145,'0','0'])};if(typeof __ez_fad_position != 'undefined'){__ez_fad_position('div-gpt-ad-laptrinhcanban_com-box-1-0')};</script></span></span><span class="ezoic-ad box-1 box-1-multi-145 adtester-container adtester-container-145" data-ez-name="laptrinhcanban_com-box-1"><span id="div-gpt-ad-laptrinhcanban_com-box-1-0_1" ezaw="300" ezah="262" style="position:relative;z-index:0;display:inline-block;padding:0;min-height:262px;min-width:300px" class="ezoic-ad"><script data-ezscrex="false" data-cfasync="false" type="text/javascript" style="display:none">if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'laptrinhcanban_com-box-1','ezslot_5',145,'0','1'])};if(typeof __ez_fad_position != 'undefined'){__ez_fad_position('div-gpt-ad-laptrinhcanban_com-box-1-0_1')};</script></span></span><span class="ezoic-ad box-1 box-1-multi-145 adtester-container adtester-container-145" data-ez-name="laptrinhcanban_com-box-1"><span id="div-gpt-ad-laptrinhcanban_com-box-1-0_2" ezaw="300" ezah="262" style="position:relative;z-index:0;display:inline-block;padding:0;min-height:262px;min-width:300px" class="ezoic-ad"><script data-ezscrex="false" data-cfasync="false" type="text/javascript" style="display:none">if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'laptrinhcanban_com-box-1','ezslot_6',145,'0','2'])};if(typeof __ez_fad_position != 'undefined'){__ez_fad_position('div-gpt-ad-laptrinhcanban_com-box-1-0_2')};</script></span></span><span class="ezoic-ad box-1 box-1-multi-145 adtester-container adtester-container-145" data-ez-name="laptrinhcanban_com-box-1"><span id="div-gpt-ad-laptrinhcanban_com-box-1-0_3" ezaw="300" ezah="262" style="position:relative;z-index:0;display:inline-block;padding:0;min-height:262px;min-width:300px" class="ezoic-ad"><script data-ezscrex="false" data-cfasync="false" type="text/javascript" style="display:none">if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'laptrinhcanban_com-box-1','ezslot_7',145,'0','3'])};if(typeof __ez_fad_position != 'undefined'){__ez_fad_position('div-gpt-ad-laptrinhcanban_com-box-1-0_3')};</script></span></span><style> .box-1-multi-145{border:none!important;display:inline-block;float:none!important;line-height:0px;margin-bottom:3px!important;margin-left:0px!important;margin-right:0px!important;margin-top:3px!important;max-width:100%!important;min-height:250px;min-width:300px;padding:0;}

Hướng dẫn reversed python
report this ad

Chủ đề

Hướng dẫn reversed python
report this ad


Nội dung
Hướng dẫn reversed python
report this ad