Python dibuat pada akhir 1980-an sebagai penerus bahasa ABC. Python 2.0, dirilis pada tahun 2000, memperkenalkan fitur-fitur seperti pemahaman daftar dan sistem pengumpulan sampah dengan penghitungan referensi.
Python 3.0, dirilis pada tahun 2008, adalah revisi utama dari bahasa yang tidak sepenuhnya kompatibel dengan versi sebelumnya, dan banyak kode Python 2 yang tidak berjalan tanpa modifikasi pada Python 3.
Python secara konsisten menempati peringkat sebagai salah satu bahasa pemrograman paling populer.[30][31][32][33]
Sejarah
Python dibuat pada akhir 1980-an[34] oleh Guido van Rossum di Centrum Wiskunde & Informatica (CWI) di Belanda sebagai penerus bahasa ABC (sendiri terinspirasi oleh SETL),[35] mampu menangani pengecualian dan berinteraksi dengan sistem operasi Amoeba.[36] Implementasinya dimulai pada bulan Desember 1989. Van Rossum memikul tanggung jawab penuh atas proyek tersebut, sebagai pengembang utama, hingga 12 Juli 2018, ketika ia mengumumkan "liburan permanen" dari tanggung jawabnya sebagai Benevolent Dictator For Life Python, sebuah gelar yang diberikan komunitas Python kepadanya untuk mencerminkan komitmen jangka panjangnya sebagai pengambil keputusan utama proyek.
Tanggal akhir masa pakai Python 2.7 yang awalnya ditetapkan pada tahun 2015 kemudian ditunda hingga tahun 2020 karena sejumlah besar kode yang tidak dapat dengan mudah dilanjutkan ke Python 3.
Python 3.6 (dan setiap perilisan lama), tidak lagi didukung per 2021.
Pada 2022, Python 3.10.4 dan 3.9.12 dipercepat dan begitu juga perilisan yang lebih lama termasuk 3.8.13, dan 3.7.13 dikarenakan banyak masalah keamanan pada 2022. Python 3.9.13 adalah versi 3.9 terbaru, dan mulai sekarang 3.9 (dan yang terlama; 3.8 dan 3.7) hanya akan mendapatkan pembaruan keamanan.[37]
Desain Python menawarkan beberapa dukungan untuk pemrograman fungsional dalam tradisi Lisp. Memiliki fungsi filter, map, dan reduce;daftar pemahaman, kamus, set, dan ekspresi generator.[38] Pustaka standar memiliki dua modul (itertools dan functools) yang mengimplementasikan alat fungsional yang dipinjam dari Haskell dan Standard ML.[39]
Daripada memiliki semua fungsionalitas yang dibangun ke dalam intinya, Python dirancang untuk menjadi sangat dapat dikembangkan. Modularitas yang ringkas ini membuatnya sangat populer sebagai sarana untuk menambahkan antarmuka yang dapat diprogram ke aplikasi yang ada. Visi Van Rossum tentang bahasa inti kecil dengan perpustakaan standar yang besar dan penerjemah yang mudah diperluas berasal dari rasa frustrasinya dengan ABC, yang mendukung pendekatan yang berlawanan.[34]
Pengembang Python menargetkan ini dapat menyenangkan untuk digunakan. Ini tercermin dalam namanya—sebuah penghargaan untuk grup komedi Inggris Monty Python—dan terkadang dengan pendekatan yang menyenangkan untuk tutorial dan materi referensi, seperti contoh yang merujuk pada spam dan telur (sebuah referensi ke sketsa Monty Python) alih-alih foo dan bar standar.
Pengguna dan peminat Python, terutama mereka yang dianggap berpengetahuan atau berpengalaman, sering disebut sebagai Pythonistas.
Sintaks dan semantik
Python dimaksudkan sebagai bahasa yang mudah dibaca. Pemformatannya tidak berantakan secara visual, dan sering kali menggunakan kata kunci bahasa Inggris di mana bahasa lain menggunakan tanda baca. Tidak seperti banyak bahasa lain, ia tidak menggunakan tanda kurung awal untuk membatasi blok, dan pernyataan titik koma setelahnya bersifat opsional. Ini memiliki lebih sedikit pengecualian sintaksis dan kasus khusus daripada C atau Pascal.
Indentasi
Python menggunakan indentasi spasi, daripada tanda kurung kurawal atau kata kunci, untuk membatasi blok. Peningkatan indentasi muncul setelah pernyataan tertentu; penurunan indentasi menandakan akhir dari blok saat ini. Dengan demikian, struktur visual program secara akurat mewakili struktur semantik program. Fitur ini terkadang disebut aturan off-side, yang dimiliki beberapa bahasa lain, tetapi di sebagian besar bahasa indentasi tidak memiliki arti semantik.
Pernyataan dan aliran kontrol
Penetapan nilai yang sama secara berurutan ke beberapa nama, misalnya, x=2; y=2; z=2 menghasilkan pengalokasian penyimpanan ke (paling banyak) tiga nama dan satu objek numerik, yang ketiganya terikat. Karena nama adalah pemegang referensi umum, tidak masuk akal untuk mengasosiasikan tipe data tetap dengannya. Namun pada waktu tertentu sebuah nama akan terikat ke suatu objek, yang akan memiliki tipe; jadi ada pengetikan dinamis.
Pernyataan if, yang secara kondisional mengeksekusi blok kode, bersama dengan else dan elif (sebuah kontraksi dari else-if).
Pernyataan for yang melakukan iterasi pada objek yang dapat diulang, menangkap setiap elemen ke variabel lokal untuk digunakan oleh blok terlampir.
Pernyataan while yang mengeksekusi sebuah blok kode selama kondisinya benar.
Pernyataan try yang memungkinkan pengecualian yang dimunculkan dalam blok kode terlampir untuk ditangkap dan ditangani oleh except klausul; itu juga memastikan bahwa kode-pembersihan dalam file blok finally akan selalu berjalan terlepas dari bagaimana blok keluar.
Pernyataan raise digunakan untuk memunculkan pengecualian tertentu atau memunculkan kembali pengecualian yang tertangkap.
Pernyataan class yang mengeksekusi blok kode dan menempelkan namespace lokalnya ke class, untuk digunakan dalam pemrograman berorientasi objek.
Pernyataan def yang mendefinisikan fungsi atau metode.
Pernyataan with dari Python 2.5 dirilis pada September 2006, yang membungkus blok kode dalam manajer konteks (misalnya, memperoleh kunci sebelum blok kode dijalankan dan melepaskan kunci setelahnya, atau membuka file dan kemudian menutupnya), memungkinkan perilaku seperti Resource Acquisition Is Initialization (RAII) dan menggantikan idiom percobaan / akhirnya yang umum.[41]
Pernyataan continue melewati iterasi ini dan melanjutkan dengan item berikutnya.
Pernyataan pass yang berfungsi sebagai NOP. Ini secara sintaksis diperlukan untuk membuat blok kode kosong.
Pernyataan assert digunakan selama debugging untuk memeriksa kondisi yang seharusnya diterapkan.
Pernyataan yield yang mengembalikan nilai dari fungsi generator. Dari Python 2.5, yield juga seorang operator. Formulir ini digunakan untuk mengimplementasikan coroutine.
Pernyataan import , yang digunakan untuk mengimpor modul yang fungsi atau variabelnya dapat digunakan dalam program saat ini. Ada tiga cara menggunakan import: import <nama modul> [sebagai <alias>] atau from <nama modul> import * atau from <nama modul> import <definisi 1> [sebagai <alias 1>], <definisi 2> [sebagai <alias 2>], ....
Pernyataan print diubah menjadi fungsi print() dengan Python 3.
Metode
Metode pada objek adalah fungsi yang dilampirkan ke kelas objek; sintaks instance.method(argument) adalah, untuk metode dan fungsi normal, gula sintaksis untuk Class.method(instance, argument). Metode Python memiliki explisit self parameter untuk mengakses data instance, berbeda dengan yang tersirat self (atau this) dalam beberapa bahasa pemrograman berorientasi objek lainnya (mis., C++, Java, Objective-C, atau Ruby). Python juga menyediakan metode, sering dipanggil dunder methods (karena nama mereka dimulai dan diakhiri dengan garis bawah ganda), untuk mengizinkan kelas yang ditentukan pengguna untuk mengubah cara mereka ditangani oleh operasi asli termasuk panjang, perbandingan, dalam operasi aritmatika dan konversi penulisan.
Penulisan
Python menggunakan duck typing dan memiliki objek yang diketik tetapi nama variabel yang tidak diketik. Batasan jenis tidak diperiksa pada waktu kompilasi; sebaliknya, operasi pada suatu objek mungkin gagal, menandakan bahwa objek yang diberikan bukan tipe yang sesuai. Meskipun diketik secara dinamis, Python diketik dengan kuat, melarang operasi yang tidak terdefinisi dengan baik (misalnya, menambahkan angka ke string) daripada secara diam-diam mencoba memahaminya.
Python memungkinkan pemrogram untuk menentukan tipe mereka sendiri menggunakan kelas, yang paling sering digunakan untuk pemrograman berorientasi objek. Contoh instance baru dibangun dengan memanggil kelas (misalnya, SpamClass() atauEggsClass()), dan kelas-kelasnya adalah instance dari metaclasstype (itu sendiri merupakan contoh dari dirinya sendiri), memungkinkan metaprogramming dan refleksi.
Operasi arimatika
Python memiliki simbol biasa untuk operator aritmatika (+, -, *, /), operator divisi lantai // dan operasi modulus% (dimana sisanya bisa negatif, misalnya, 4 % -3 == -2). Ini juga memiliki ** untuk eksponensial, misalnya, 5**3 == 125 dan 9**0.5 == 3.0, dan sebuah matriks operator perkalian @ .[42] Operator ini bekerja seperti dalam matematika tradisional; dengan aturan operasi yang sama, infiks operator (+ dan - juga bisa unary untuk masing-masing mewakili bilangan positif dan negatif).
Program untuk menghitung faktorial dari bilangan bulat positif:
n=int(input('Ketik sebuah angka, dan faktorialnya akan diprinted: '))ifn<0:raiseValueError('Anda harus memasukkan bilangan bulat bukan negatif')faktorial=1foriinrange(2,n+1):faktorial*=iprint(faktorial)
classOrang:def__init__(self,nama):self.nama=namadeftampilkan_nama(self):returnself.namaorang=Orang("Wikipedia")# Initialisasi objectprint(orang.tampilkan_nama())# Output: Wikipedia
Beberapa bagian dari pustaka standar dicakup oleh spesifikasi (misalnya, implementasi Web Server Gateway Interface (WSGI) wsgiref mengikuti PEP 333[45]), tetapi kebanyakan modul tidak. Mereka ditentukan oleh kode, dokumentasi internal, dan test suites mereka. Namun, karena sebagian besar pustaka standar adalah kode Python lintas platform, hanya beberapa modul yang perlu diubah atau ditulis ulang untuk implementasi varian.
Mulai Juni 2022, Python Package Index (PyPI), repositori resmi untuk perangkat lunak Python pihak ketiga, berisi lebih dari 380,000[46] paket dengan berbagai fungsi, termasuk:
Sebagian besar implementasi Python (termasuk CPython) menyertakan read–eval–print loop (REPL), yang memungkinkan mereka berfungsi sebagai penerjemah baris perintah di mana pengguna memasukkan pernyataan secara berurutan dan menerima hasil dengan segera.
Shell lain, termasuk IDLE dan IPython, menambahkan kemampuan lebih lanjut seperti penyelesaian otomatis yang ditingkatkan, retensi status sesi, dan Syntax highlighting.
Konferensi pengembang Python di Indonesia (PyCon Indonesia[49]) dilaksanakan sejak tahun 2017, berlangsung setiap tahun.
Berikut tema dan lokasi konferensi pengembang Python Indonesia:
Tahun 2017 di Surabaya dengan tema "A New Beginning"
Tahun 2018 di Jakarta dengan tema "Python for Everyone"
Tahun 2019 di Surabaya dengan tema "The Beauty of Python"
Tahun 2020 secara daring dengan tema "Connect - Collab - Contribute"
Ini adalah kegiatan yang dilaksanakan oleh komunitas Python Indonesia.
Generator dokumentasi API
Alat yang dapat digunakan untuk membuat dokumentasi API Python termasuk pydoc (tersedia sebagai bagian dari pustaka standar), Sphinx, Pdoc dan forknya, Doxygen dan Graphviz, diantara yang lain.[50]
Bahasa yang dipengaruhi oleh Python
Desain dan filosofi Python telah memengaruhi banyak bahasa pemrograman lainnya:
Boo menggunakan indentasi, sebuah sintaks yang serupa, dan model objek yang serupa.[51]
Cobra menggunakan indentasi dan sebuah sintaks yang serupa, dan dokumen Pengakuannya mencantumkan Python pertama di antara bahasa yang memengaruhinya[52]
CoffeeScript, sebuah bahasa pemrograman yang dikompilasi silang ke JavaScript, memiliki sintaks yang terinspirasi Python.
GDScript, bahasa scripting yang sangat mirip dengan Python, built-in ke mesin permainan Godot.[54]
Go didesain untuk "kecepatan bekerja dalam bahasa dinamis seperti Python"[55] dan berbagi sintaks yang sama untuk mengiris array.
Swift, sebuah bahasa pemrograman yang dikembangkan oleh Apple, memiliki beberapa sintaks yang terinspirasi Python.[56]
Sertifikasi Python
Python Institute adalah lembaga yang kredibel yang menawarkan sertifikasi Python. Python Institute didirikan pada tahun 2003 oleh Guido van Rossum, pencipta bahasa pemrograman Python. Python Institute memiliki misi untuk mempromosikan penggunaan Python dan meningkatkan keterampilan pengembang Python. Python Institute telah menetapkan jalur sertifikasi global independen untuk bahasa pemrograman Python. Jalur tersebut terdiri dari enam track sertifikasi[57]:
General-Purpose Programming (PCEP™, PCAP™, PCPP1™, and PCPP2™ exams)
^Kesalahan pengutipan: Tag <ref> tidak sah;
tidak ditemukan teks untuk ref bernama bini
^Lattner, Chris (3 June 2014). "Chris Lattner's Homepage". Chris Lattner. Diakses tanggal 3 June 2014. The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.
^"index | TIOBE - The Software Quality Company". www.tiobe.com. Diarsipkan dari versi asli tanggal 25 February 2018. Diakses tanggal 2021-02-02. Python has won the TIOBE programming language of the year award! This is for the fourth time in the history, which is a record! The title is awarded to the programming language that has gained most popularity in one year.Parameter |url-status= yang tidak diketahui akan diabaikan (bantuan)
^"Documentation Tools". Python.org (dalam bahasa Inggris). Diarsipkan dari versi asli tanggal 11 November 2020. Diakses tanggal 2021-03-22.Parameter |url-status= yang tidak diketahui akan diabaikan (bantuan)
^Kesalahan pengutipan: Tag <ref> tidak sah;
tidak ditemukan teks untuk ref bernama AutoNT-90
^Kesalahan pengutipan: Tag <ref> tidak sah;
tidak ditemukan teks untuk ref bernama AutoNT-91
^Kesalahan pengutipan: Tag <ref> tidak sah;
tidak ditemukan teks untuk ref bernama AutoNT-93
^"Frequently asked questions". Godot Engine documentation. Diarsipkan dari versi asli tanggal 28 April 2021. Diakses tanggal 10 May 2021.Parameter |url-status= yang tidak diketahui akan diabaikan (bantuan)
^Kesalahan pengutipan: Tag <ref> tidak sah;
tidak ditemukan teks untuk ref bernama AutoNT-94
^Lattner, Chris (3 June 2014). "Chris Lattner's Homepage". Chris Lattner. Diarsipkan dari versi asli tanggal 22 December 2015. Diakses tanggal 3 June 2014. I started work on the Swift Programming Language in July of 2010. I implemented much of the basic language structure, with only a few people knowing of its existence. A few other (amazing) people started contributing in earnest late in 2011, and it became a major focus for the Apple Developer Tools group in July 2013 [...] drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.Parameter |url-status= yang tidak diketahui akan diabaikan (bantuan)
Downey, Allen B. (May 2012). Think Python: How to Think Like a Computer Scientist (edisi ke-Version 1.6.6). ISBN978-0-521-72596-5.
Hamilton, Naomi (5 August 2008). "The A-Z of Programming Languages: Python". Computerworld. Diarsipkan dari versi asli tanggal 29 December 2008. Diakses tanggal 31 March 2010.Parameter |url-status= yang tidak diketahui akan diabaikan (bantuan)
Lutz, Mark (2013). Learning Python (edisi ke-5th). O'Reilly Media. ISBN978-0-596-15806-4.
Football stadium in Al Khor, Qatar Al-Bayt StadiumInterior view in 2022, looking northeastFull nameAl-Bayt StadiumLocationAl Khor, QatarCoordinates25°39′08″N 51°29′15″E / 25.65222°N 51.48750°E / 25.65222; 51.48750Capacity68,895[1]Record attendance68,895 (Spain vs Germany, 27 November 2022) and (England vs France, 10 December 2022)Field size105x68 metersSurfaceGrassConstructionBroke ground2014; 10 years ago (2014)OpenedNovember ...
Region of ancient Asia Minor For the genus of porcelain crabs, see Pisidia (crustacean). This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Pisidia – news · newspapers · books · scholar · JSTOR (October 2019) (Learn how and when to remove this template message) Pisidia (Πισιδία)Ancient Region of Anatolia...
Pour les articles homonymes, voir Guinée (homonymie). République de Guinée équatoriale(es) República de Guinea Ecuatorial (pt) República da Guiné Equatorial Drapeau de la Guinée équatoriale Armoiries de la Guinée équatoriale Devise en espagnol : Unidad, Paz, Justicia (« Unité, paix, justice ») Hymne en espagnol : Caminemos pisando las sendas de nuestra inmensa felicidad (« Marchons en foulant les chemins de notre bonheur i...
American politician From the Semi-Weekly Interior Journal (Stanford, KY) Harvey Helm (December 2, 1865 – March 3, 1919) was a United States representative from Kentucky. He was born in Danville, Kentucky. He attended the Stanford Male Academy and was graduated from the Central University of Kentucky in 1887. He studied law and was admitted to the bar in 1890 and began practice in Stanford, Kentucky. Helm was a member of the Kentucky House of Representatives in 1894 and the county attorney o...
German illustrator Primate drawings from Brehms Tierleben Robert Kretschmer (1812–1872[1]) was a German illustrator, known for his illustrations in Brehms Tierleben. References ^ Lot 168 : ROBERT KRETSCHMER (GERMAN, 1812-1872) Further reading Andreas Daum, Wissenschaftspopularisierung im 19. Jahrhundert: Bürgerliche Kultur, naturwissenschaftliche Bildung und die deutsche Öffentlichkeit, 1848–1914. Munich: Oldenbourg, 1998, ISBN 3-486-56337-8 Luca Zordan: Zwischen Mytho...
Manilal NagInformasi latar belakangLahir16 August 1939Bankura, IndiaGenremusik klasik IndiaInstrumenSitarPandit Manilal Nag (kelahiran 16 Agustus 1939[1]) adalah seorang pemain sitar klasik India dan eksponen Bishnupur gharana dari Bengal. Ia dianugerahi Penghargaan Padma Shri, penghargaan sipil tertinggi keempat di India pada 2020.[2][3][4] Referensi ^ Ira Landgarten, Interview with Manilal Nag, 1994. Accessed 1 July 2014 ^ Padma honours for Ajoy Chakraborty, ...
Father of the Bride Part IIPoster rilis teatrikalSutradaraCharles ShyerProduserNancy MeyersDitulis olehNancy MeyersCharles ShyerBerdasarkanFather's Little Dividendoleh Albert HackettFrances GoodrichPemeran Steve Martin Diane Keaton Martin Short Kimberly Williams George Newbern Kieran Culkin Penata musikAlan SilvestriSinematograferElliot DavisWilliam A. FrakerPenyuntingAdam BernardiStephen A. RotterPerusahaanproduksiTouchstone PicturesDistributorBuena Vista PicturesTanggal rilis 8 Desemb...
Doris Hart Doris Hart, 1953 Nazionalità Stati Uniti Tennis Carriera Singolare1 Vittorie/sconfitte 0–0 Titoli vinti 74 Miglior ranking 1º[1] Risultati nei tornei del Grande Slam Australian Open V (1949) Roland Garros V (1950, 1952) Wimbledon V (1951) US Open V (1954, 1955) Doppio1 Vittorie/sconfitte 0–0 Titoli vinti Miglior ranking 1º Risultati nei tornei del Grande Slam Australian Open V (1950) Roland Garros V (1948, 1950, 1951, 1952, ...
Emirati monument to Zayed bin Sultan Al Nahyan in Abu Dhabi Not to be confused with The Founders Memorial. The Founder's MemorialNative name صرح زايد المؤسسLocationAbu Dhabi, United Arab EmiratesCoordinates24°27′47.23″N 54°19′20.69″E / 24.4631194°N 54.3224139°E / 24.4631194; 54.3224139Websitewww.thefoundersmemorial.ae/en/ The Founder's Memorial (Arabic: صرح زايد المؤسس), a monument and visitor centre in Abu Dhabi, United Arab Emira...
Nan Madol. Nan Madol adalah reruntuhan kota yang terletak di sebelah timur pulau Pohnpei. Kota ini sebelumnya merupakan ibu kota Dinasti Saudeleur hingga sekitar tahun 1628.[1][note 1] Saat ini, reruntuhan Nan Madol terletak di distrik Madolenihmw, Federasi Mikronesia. Kota ini terdiri dari serangkaian pulau buatan kecil yang terhubung oleh jaringan kanal.[1] Reruntuhan ini beserta tembok batunya meliputi wilayah sepanjang 1,5 km dan selebar 0,5 km dan terdiri dari sek...
Traditional system of Indian architecture as described in Hindu texts The architecture of a Hindu temple in Sunak, Gujarat. Hindu architecture is the traditional system of Indian architecture for structures such as temples, monasteries, statues, homes, market places, gardens and town planning as described in Hindu texts.[1][2] The architectural guidelines survive in Sanskrit manuscripts and in some cases also in other regional languages. These texts include the Vastu shastras,...
Japanese train type 485 seriesAn original bonnet-style 485 series train on a Joban Line Hitachi service in August 1998In service1964–2022ManufacturerHitachi, Kawasaki Heavy Industries, Kinki Sharyo, Kisha Seizo, Nippon Sharyo, Tokyu Car CorporationReplacedKiHa 80 series, KiHa 58 seriesConstructed1964–1987Entered service25 December 1964Refurbished1999–2006Scrapped1985 (481 series)Number built1,453 vehiclesNumber preserved6 vehicles and 1 cab endNumber scrapped1,312 vehicles (the rest of ...
American musician (1925–2015) Gunther SchullerSchuller in 2008Background informationBorn(1925-11-22)November 22, 1925Queens, New York, U.S.DiedJune 21, 2015(2015-06-21) (aged 89)Boston, Massachusetts, U.S.GenresJazz, classical, third streamOccupation(s)President of the New England ConservatoryInstrument(s)French horn, fluteMusical artist Gunther Alexander Schuller (November 22, 1925 – June 21, 2015)[1] was an American composer, conductor, horn player, author, his...
لمعانٍ أخرى، طالع روبرت كلارك (توضيح). روبرت كلارك معلومات شخصية الميلاد 11 سبتمبر 1882 أبردين الوفاة 29 سبتمبر 1950 (68 سنة) أبردين الجنسية المملكة المتحدة عضو في الجمعية الملكية في إدنبرة المدرسة الأم جامعة أبردين الحياة العملية المهنة مستكشف، ...
The building in 2013 The National Union of Mineworkers headquarters is a building in Sheffield, England which formerly housed the head office of the National Union of Mineworkers (NUM). History The building was commissioned by Arthur Scargill in the early 1980s in an effort to move the NUM from London to the friendlier territory of the Socialist Republic of South Yorkshire.[1] Construction began in 1986[2] and the building opened in 1988.[3] Following the decline of t...
District of Manila, Metro Manila, Philippines For other uses, see Ermita (disambiguation). This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Ermita – news · newspapers · books · scholar · JSTOR (June 2009) (Learn how and when to remove this message) District of Manila in National Capital Region, PhilippinesErm...