ผลต่างระหว่างรุ่นของ "ภาษาไพทอน"
หน้าตา
เนื้อหาที่ลบ เนื้อหาที่เพิ่ม
ล ย้อนการแก้ไขของ JackDaniels898 (พูดคุย) ไปยังรุ่นก่อนหน้าโดย 159.192.98.50 ป้ายระบุ: ย้อนรวดเดียว |
this is the best ป้ายระบุ: ถูกย้อนกลับแล้ว การแก้ไขแบบเห็นภาพ |
||
บรรทัด 25: | บรรทัด 25: | ||
| wikibooks = ภาษาไพทอน |
| wikibooks = ภาษาไพทอน |
||
}} |
}} |
||
* good |
|||
'''ไพทอน''' ({{lang-en|Python}}) เป็น[[อินเทอร์พรีเตอร์]][[ภาษาโปรแกรมระดับสูง|ภาษาระดับสูง]]ซึ่งสร้างโดย[[คีโด ฟัน โรสซึม]] โดยเริ่มใน พ.ศ. 2533 การออกแบบของภาษาไพทอนมุ่งเน้นให้ผู้โปรแกรมสามารถอ่านชุดคำสั่งได้โดยง่ายผ่านการใช้[[:en:off-side rule|งานอักขระเว้นว่าง (whitespaces) จำนวนมาก]] นอกจากนั้นการออกแบบภาษาไพทอนและการประยุกต์ใช้แนวคิดการเขียน[[โปรแกรมเชิงวัตถุ]]ในตัวภาษายังช่วยให้[[โปรแกรมเมอร์|นักเขียนโปรแกรม]]สามารถเขียนโปรแกรมที่เป็นระเบียบ อ่านง่าย มีขนาดเล็ก และง่ายต่อการบำรุง<ref>https://web.archive.org/web/20120623165941/http://cutter.rexx.com/~dkuhlman/python_book_01.html</ref> |
|||
ไพทอนเป็นภาษาแบบไดนามิกพร้อม[[:en:Garbage collection (computer science)|ตัวเก็บขยะ]] ไพทอนรองรับ[[กระบวนทัศน์การเขียนโปรแกรม]]หลายรูปแบบ ซึ่งรวมถึงแต่ไม่จำกัดเพียงการเขียนโปรแกรมตามลำดับขั้น การเขียนโปรแกรมเชิงวัตถุ หรือการเขียนโปรแกรมเชิงฟังก์ชัน นอกจากนี้ไพทอนเป็นภาษาที่มักถูกอธิบายว่าเป็นภาษาโปรแกรมแบบ "มาพร้อมถ่าน" (batteries included) กล่าวคือไพทอนมาพร้อมกับ[[:en:Standard Library|ไลบรารีมาตรฐาน]]จำนวนมาก เช่นโครงสร้างข้อมูลแบบซับซ้อน และไลบรารีสำหรับคณิตศาสตร์ |
|||
ไพทอนมักถูกมองว่าเป็นภาษาที่สร้างต่อจากภาษา [[ภาษาโปรแกรม ABC|ABC]] โดยไพทอน 2.0 ซึ่งออกเผยแพร่เมื่อ พ.ศ. 2543 มาพร้อมกับเครื่องมือสำหรับการเขียนโปรแกรมจำนวหนึ่ง อย่างเช่น[[:en:List Comprehension|ตัวสร้างแถวรายการ]] (list comprehension) |
|||
ไพทอนรุ่น 3.0 เป็นไพทอนรุ่นที่ได้รับการปรับปรุงและแก้ไขจำนวนมาก ทว่าความเปลี่ยนแปลงไนไพทอน 3 นั้นเป็นการเปลี่ยนแปลงที่[[:en:Backward compatibility|ไม่เข้ากันแบบย้อนหลัง]] กล่าวคือชุดคำสั่งที่เขียนสำหรับไพทอน 2 อาจไม่ทำงานตามปกติเมื่อสั่งให้ทำงานบนตัวแปลภาษาของไพทอน 3 |
|||
ไพทอนรุ่น 2.0 หมดการสนับสนุนอย่างเป็นทางการใน พ.ศ. 2563 โดยการหมดการสนับสนุนนี้ถูกวางแผนตั้งแต่ พ.ศ. 2558 และไพทอนรุ่น 2.7.18 เป็นไพทอนรุ่น 2.7 และรุ่นตระกูล 2.0 ตัวสุดท้ายที่ออกเผยแพร่<ref>{{Cite web|url=https://pythoninsider.blogspot.com/2020/04/python-2718-last-release-of-python-2.html|title=Python Insider: Python 2.7.18, the last release of Python 2|last=Peterson|first=Benjamin|date=2020-04-20|website=Python Insider|access-date=2020-04-27}}</ref> โดยหลังจากนี้จะไม่มีการสนับสนุนความปลอดภัยหรือการปรับปรุงอื่นใดเพิ่มเติมสำหรับภาษาไพทอนรุ่น 2.0 อีก<ref>{{Cite web|url=https://www.python.org/doc/sunset-python-2/|title=Sunsetting Python 2|website=Python.org|language=en|access-date=2019-09-22}}</ref><ref>{{Cite web|url=https://www.python.org/dev/peps/pep-0373/|title=PEP 373 -- Python 2.7 Release Schedule|website=Python.org|language=en|access-date=2019-09-22}}</ref> |
|||
[[อินเทอร์พรีเตอร์]]ของภาษาไพทอนสามารถใช้งานได้บนหลายระบบปฏิบัติการ ชุมชนนักพัฒนาโปรแกรมของไพทอนร่วมกันดูแลโครงการ[[:en:CPython|ซีไพทอน]]โดยมี[[มูลนิธิซอฟต์แวร์ไพทอน]]ซึ่งเป็นองค์กรไม่แสวงผลกำไร ทำหน้าที่ดูแลและจัดการทรัพยากรสำหรับการพัฒนาไพทอนและซีไพทอน |
|||
== คุณสมบัติและปรัชญาการออกแบบ == |
|||
<!-- TODO: Add citations from English Wikipedia (it's quite straightforward) --> |
|||
ผู้ใช้ภาษาไพทอนสามารถเลือก[[กระบวนทัศน์การเขียนโปรแกรม]]ตามที่ตนเองถนัดได้ โดยรองรับการเขียนโปรแกรมเชิงโครงสร้างและ[[การเขียนโปรแกรมเชิงวัตถุ]]อย่างเต็มรูปแบบ รวมถึงรองรับ[[การเขียนโปรแกรมเชิงฟังก์ชัน]] (ทั้งในรูปแบบของ[[การเขียนโปรแกรมเชิงลักษณะ]] และการเขียนโปรแกรมเชิงเมตาออบเจกต์) ส่วนขยายของไพทอนทำให้สามารถเขียนโปรแกรมด้วยกระบวนทัศน์อื่น เช่น[[การเขียนโปรแกรมเชิงตรรกะ]] |
|||
ไพทอนเก็บข้อมูลแบบไดนามิก (dynamic type) และใช้ขั้นตอนวิธี[[:en:Reference counting|การนับการอ้างอิง]] (Reference counting) ประกอบรวมกับ[[:en:Garbage collection (computer science)|ตัวเก็บขยะ]] (garbage collector) เพื่อจัดการหน่วยความจำ |
|||
ไพทอนมาพร้อมเครื่องมือสำหรับการเขียนโปรแกรมเชิงฟังก์ชันแบบที่พบใน[[ภาษาลิสป์]] นอกจากนี้ไพทอนมีเครื่องมืออย่างเช่นฟังก์ชัน <code>filter</code> <code>map</code> และ <code>reduce</code>, [[:en:List comprehension|เครื่องมือการสร้างลิสต์]] (list comprehension), [[แถวลำดับแบบจับคู่]] (ในชื่อของ Dictionary), [[เซต]] และ[[:en:Generator_(computer_programming)|เครื่องมือสร้างการวนซ้ำ]] (generator) |
|||
แนวคิดและหลักการของไพทอนถูกสรุปในเอกสารชื่อว่า [[:en:Zen of Python|Zen of Python]] ซึ่งระบุหลักการของภาษาไว้เช่น |
|||
* สวยงามดีกว่าน่าเกลียด (Beautiful is better than ugly.) |
|||
* ชัดแจ้งดีกว่าซ่อนเร้น (Explicit is better than implicit.) |
|||
* เรียบง่ายดีกว่าซับซ้อน (Simple is better than complex.) |
|||
* ซับซ้อนดีกว่ายุ่งเหยิง (Complex is better than complicated.) |
|||
* ต้องใส่ใจการอ่านออกได้ง่าย (Readability counts.) |
|||
ไพทอนไม่ได้ถูกออกแบบมาให้มีคุณสมบัติและความสามารถในการทำงานทุกอย่าง แต่ไพทอนถูกออกแบบมาให้สามารถถูกต่อยอดได้ง่าย การออกแบบในลักษณะนี้ทำให้ตัวของภาษาไพทอนได้รับความนิยมเนื่องด้วยความสามารถในการเพิ่มส่วนต่อขยายหรือชุดคุณสมบัติลงไปในแอปพลิเคชันที่มีอยู่ก่อนหน้านี้ การออกแบบในลักษณะนี้มาจากวิสัยทัศน์ของฟัน โรสซึมที่ต้องการเห็นการออกแบบภาษาโปรแกรมที่มีระบบแกนกลางขนาดเล็ก แต่มาพร้อมไลบรารีชุดคำสั่งขนาดใหญ่ โดยเป้าหมายการออกแบบลักษณะนี้มาจากความไม่สะดวกในการใช้ภาษา ABC ที่ฟัน โรสซึมเคยเจอมาก่อนหน้านี้ |
|||
โครงสร้างทางวากยสัมพันธ์ (syntax) ของภาษาไพทอนมุ่งเน้นความเรียบง่ายและไม่ยุ่งเหยิง ในขณะเดียวกันยังคงให้อิสระกับนักพัฒนาโปรแกรมในการเลือกวิธีการเขียนโปรแกรมได้เอง ปรัชญาการออกแบบนี้ของไพทอนอยู่บนความเชื่อที่ว่า "ควรจะมีทางเดียว—และทางเดียวเท่านั้น—ในการทำอะไรสักอย่าง" ("there should be one—and preferably only one—obvious way to do it") ซึ่งตรงกันข้ามกับแนวคิดการออกแบบของ[[ภาษาเพิร์ล]]ที่เชื่อว่า "[[:en:There's more than one way to do it|เราควรทำอะไรได้มากกว่าหนึ่งวิธี]]" ("There's more than one way to do it") หากจะกล่าวให้ละเอียด [[:en:Alex Martelli|อะเล็กซ์ มาร์เตลลี]] ผู้เขียนตำราภาษาไพทอน และสมาชิกของมูลนิธิซอฟต์แวร์ไพทอน กล่าวว่า "ในวัฒนธรรมของไพทอน การอธิบายว่า[วิธีการเขียนโปรแกรม]บางอย่างนั้น''ฉลาดมาก'' ไม่ถือเป็นคำชม" |
|||
นักพัฒนาโปรแกรมที่ใช้ภาษาไพทอนมักพยายามหลีกเลี่ยง[[:en:premature optimization|การปรับปรุงประสิทธิภาพก่อนถึงเวลาอันควร]] (premature optimisation) และมักปฏิเสธการรวมโค้ดของโครงการ CPython ที่ต้องแลกประสิทธิภาพที่เพิ่มขึ้นมาเล็กน้อยกับความอ่านยากของโค้ด โดยเมื่อต้องเขียนชุดคำสั่งที่เวลาประมวลผลเป็นเรื่องสำคัญ นักพัฒนาโปรแกรมไพทอนจะนิยมเขียนส่วยขยายของโปรแกรมนั้นด้วยภาษา C แยกออกมา หรือใช้ [[:en:PyPy|PyPy]] ซึ่งเป็น[[:en:Just-in-time compilation|ตัวแปลภาษาแบบในเวลา]] (Just-in-time compiler) สำหรับภาษาไพทอน นอกจากนี้นักพัฒนายังมีตัวเลือกอื่นเช่นการใช้[[:en:Cython|ไซทอน]]ซึ่งเป็นตัวแปลรหัสคำสั่งจากภาษาไพทอนไปเป็นภาษาซี |
|||
หนึ่งในเป้าหมายสำคัญของภาษาไพทอนคือความสนุกในการใช้งาน ชื่อของภาษาโปรแกรมมิงไพทอนนั้นมาจากชื่อของกลุ่มนักแสดงตลก [[Monty Python]] จากประเทศอังกฤษ ความมุ่งมั่นในการทำให้ภาษาไพทอนนั้นสนุกต่อการใช้นั้นพบเห็นได้เพิ่มเติมจากตัวอย่างของชุดคำสั่งในภาษาไพทอนบนเว็บไซต์ของโครงการไพทอนเอง ซึ่งเลือกใช้คำอย่างเช่น "spam and eggs" (เพื่อล้อกับตอนหนึ่งของรายการตลกจาก Monty Python) แทนที่จะเลือกใช้คำทั่วไปอย่าง foo และ bar ตามตัวอย่างภาษาโปรแกรมมิงอื่น |
|||
ชุมชนไพทอนมักนิยมใช้วลี "มีความเป็นไพทอน" (Pythonic) เพื่อกล่าวถึงรูปแบบของชุดคำสั่งของไพทอนที่มีความสะอาดสะอ้านและถูกเขียนขึ้นในลักษณะที่สอดคล้องกับปรัชญาการออกแบบดังกล่าว กล่าวคือมีความอ่านง่ายและแสดงถึงความรู้ในการเขียนชุดคำสั่งภาษาไพทอนได้เป็นอย่างดี ในทางตรงกันข้าม ชุดคำสั่งที่ไม่สามารถอ่านได้โดยง่าย (กล่าวคือชุดคำสั่งที่เหมือนการแปลงชุดคำสั่งจากภาษาโปรแกรมอื่นมาเป็นไพทอนแบบบรรทัดต่อบรรทัด) มักจะถูกเรียกว่าชุดคำสั่งที่ "ไม่มีความเป็นไพทอน" (Unpythonic) |
|||
ผู้ใช้ ผู้หลงใหล หรือผู้สันทัดภาษาไพทอนมักได้รับการขนานนามว่าเป็น "ไพธอนิสตา" (Pythonista) |
|||
== จุดเด่นของภาษาไพทอน == |
|||
=== ความเป็นภาษาสคริปต์ === |
|||
เนื่องจากไพทอนเป็น[[ภาษาสคริปต์]] ทำให้ใช้เวลาในการเขียนและ[[คอมไพล์]]ไม่มาก ทำให้เหมาะกับงานด้าน[[การดูแลระบบ]] (System administration) เป็นอย่างยิ่ง มีการสนับสนุนภาษาไพทอนโดยเป็นส่วนหนึ่งของ[[ระบบปฏิบัติการ]][[ยูนิกซ์]], [[ลินุกซ์]] และสามารถติดตั้งให้ทำงานเป็นภาษาสคริปต์ของวินโดวส์ ผ่านระบบ [[:en:Windows Script Host|Windows Script Host]] ได้อีกด้วย |
|||
=== ไวยากรณ์ที่อ่านง่าย === |
|||
ไวยากรณ์ของไพทอนได้กำจัดการใช้สัญลักษณ์ที่ใช้ในการแบ่งบล็อกของโปรแกรม และใช้การย่อหน้าแทน ทำให้สามารถอ่านโปรแกรมที่เขียนได้ง่าย นอกจากนั้นยังมีการสนับสนุนการเขียน docstring ซึ่งเป็นข้อความสั้น ๆ ที่ใช้อธิบายการทำงานของ[[ฟังก์ชัน]], [[คลาส]] และ[[โมดูล]]อีกด้วย |
|||
=== ความเป็นภาษากาว === |
|||
ไพทอนเป็นภาษากาว (Glue Language) ได้อย่างดีเนื่องจากสามารถเรียกใช้ภาษาโปรแกรมอื่น ๆ ได้หลายภาษา ทำให้เหมาะที่จะใช้เขียนเพื่อประสานงานโปรแกรมที่เขียนในภาษาต่างกันได้ |
|||
== ตัวอย่างภาษาโปรแกรมไพทอน == |
|||
ตัวอย่างด้านล่างเป็นตัวอย่างสำหรับโปรแกรมซึ่งเขียนด้วยภาษาไพทอน 3 ซึ่งมีโครงสร้างทางวากยสัมพันธ์ต่างจากไพทอน 2 |
|||
=== โปรแกรมสวัสดีชาวโลก === |
|||
<syntaxhighlight lang="python"> |
|||
print('Hello, world!') |
|||
</syntaxhighlight> |
|||
=== โปรแกรมสำหรับการคำนวณเลข[[แฟกทอเรียล]]ของจำนวนเต็มบวกใด ๆ === |
|||
<syntaxhighlight lang="python"> |
|||
# คำสั่งในบรรทัดด้านล่างรับเข้าตัวเลข ก่อนแปลงเป็นจำนวนเต็มบวก |
|||
# ชุดคำสั่ง `int()` ในไพทอนจะตัดทศนิยมทิ้งโดยอัตโนมัติ |
|||
n = int(input('กรุณาป้อนข้อมูลรับเข้าตัวเลขใด ๆ เพื่อคำนวณค่าแฟกทอเรียล: ')) |
|||
# หากตัวเลขมีค่าน้อยกว่า 0 ให้ทำการยกแสดงข้อผิดพลาด (error raising) |
|||
# โดยให้แสดงข้อผิดพลาดแบบ `ValueError` ขึ้นมา |
|||
if n < 0: |
|||
raise ValueError('คุณจำเป็นต้องป้อนจำนวนเต็มบวก') |
|||
# ประกาศค่าตั้งต้นของแฟกทอเรียล |
|||
fact = 1 |
|||
# วนซ้ำสำหรับค่า i ตั้งแต่ 2 ถึง (n+1) |
|||
for i in range(2, n + 1): |
|||
# เทียบเท่ากับ fact = fact * i |
|||
fact *= i |
|||
# แสดงผลคำตอบ |
|||
print(fact) |
|||
</syntaxhighlight> |
|||
== ไพทอนในแพลตฟอร์มต่าง ๆ == |
|||
ผู้เขียนโปรแกรมภาษาไพทอนสามารถเลือกใช้แพลตฟอร์ม |
|||
=== ซีไพทอน === |
|||
[[ซีไพทอน]] (CPython) คือแพลตฟอร์มภาษาไพทอนดั้งเดิม โปรแกรมอินเทอร์พรีเตอร์ถูกเขียนโดย[[ภาษาซี]] ซึ่ง[[คอมไพล์]]ใช้ได้บนหลาย[[ระบบปฏิบัติการ]] เช่น [[วินโดวส์]], [[ยูนิกซ์]], [[ลินุกซ์]] การใช้งานสามารถทำได้โดยการติดตั้งโปรแกรมอินเทอร์พรีเตอร์และ[[แพ็คเกจซอฟต์แวร์|แพ็คเกจ]]ที่จำเป็นต่าง ๆ |
|||
=== ไจธอน === |
|||
[[ไจธอน]] (Jython) เป็นแพลตฟอร์มภาษาไพทอนที่ถูกพัฒนาบน[[แพลตฟอร์มจาวา]] เพื่อเพิ่มอำนวยความสะดวกในการใช้ความสามารถ[[ภาษาสคริปต์]]ของไพทอนลงในซอฟต์แวร์จาวาอื่น ๆ |
|||
การใช้งานสามารถทำได้โดยการติดตั้งจาวาและเรียกไลบรารีของไจธอนซึ่งมาในรูปไบนารีเพื่อใช้งาน |
|||
=== ไพทอนดอตเน็ต === |
|||
Python.NET เป็นการพัฒนาภาษาไพทอนให้สามารถทำงานบน[[ดอตเน็ตเฟรมเวิร์ก]]ของไมโครซอฟท์ได้ โดยโปรแกรมที่ถูกเขียนจะถูกแปลงเป็น [[CLR]] ปัจจุบันมีโครงการที่นำภาษาไพทอนมาใช้บน .NET Framework ของไมโครซอฟท์แล้วคือโครงการ [[IronPython]] |
|||
== ไลบรารีในไพทอน == |
|||
การเขียนโปรแกรมในภาษาไพทอนโดยใช้[[ไลบรารี]]ต่าง ๆ เป็นการลดภาระของ[[โปรแกรมเมอร์]]ได้เป็นอย่างดี ทำให้โปรแกรมเมอร์ไม่ต้องเสียเวลากับการเขียนคำสั่งที่ซ้ำ ๆ เช่นการแสดงผลข้อมูลออกสู่หน้าจอ หรือการรับค่าต่าง ๆ |
|||
ไพทอนมีชุดไลบรารีมาตรฐานมาให้ตั้งแต่ติดตั้งอินเตอร์พรีเตอร์ นอกจากนั้นยังมีผู้พัฒนาจากทั่วโลกดำเนินการพัฒนาไลบรารีซึ่งช่วยอำนวยความสะดวกในด้านต่าง ๆ โดยจะเผยแพร่ในรูปแบบของแพ็คเกจต่าง ๆ ซึ่งสามารถติดตั้งเพิ่มเติมได้อีกด้วย |
|||
=== แพ็คเกจเพิ่มเติมที่น่าสนใจ === |
|||
* wxPython: อีกทางเลือกหนึ่งสำหรับเขียน[[ส่วนติดต่อกับผู้ใช้แบบกราฟิกส์]] ซึ่งสามารถใช้ได้หลาย[[ระบบปฏิบัติการ]] |
|||
* SciPy: รวม[[โครงสร้างข้อมูล]]และการคำนวณต่าง ๆ ที่จำเป็นต้องใช้ในการเขียนโปรแกรมคำนวณทางวิทยาศาสตร์ |
|||
* py2exe: ใช้สำหรับแปลงโปรแกรมที่เขียนในภาษาไพทอนให้อยู่ในรูปแบบของ ใน[[ระบบปฏิบัติการ]][[วินโดวส์]] |
|||
* PyWin32: ใช้สำหรับติดต่อเรียกใช้บริการบนระบบปฏิบัติการ[[วินโดวส์]]และ[[คลาส]]ใน [[:en:MFC|Microsoft Foundation Classes: MFC]] |
|||
* MySQLdb: ใช้สำหรับติดต่อกับระบบฐานข้อมูล [[MySQL]] |
|||
* psycopg2: ใช้สำหรับติดต่อกับระบบฐานข้อมูล [[โพสต์เกรสคิวเอล]] |
|||
* PyGTK: GTK+ สำหรับ Python ใช้สำหรับสร้าง[[ส่วนติดต่อกับผู้ใช้แบบกราฟิกส์]] ซึ่งสามารถใช้ได้หลาย[[ระบบปฏิบัติการ]] |
|||
* PyQt: Qt สำหรับ Python ใช้สำหรับสร้าง[[ส่วนติดต่อกับผู้ใช้แบบกราฟิกส์]] ซึ่งสามารถใช้ได้หลาย[[ระบบปฏิบัติการ]] |
|||
== อ้างอิง == |
== อ้างอิง == |
รุ่นแก้ไขเมื่อ 21:13, 24 พฤศจิกายน 2565
![]() | ลิงก์ข้ามภาษาในบทความนี้ มีไว้ให้ผู้อ่านและผู้ร่วมแก้ไขบทความศึกษาเพิ่มเติมโดยสะดวก เนื่องจากวิกิพีเดียภาษาไทยยังไม่มีบทความดังกล่าว กระนั้น ควรรีบสร้างเป็นบทความโดยเร็วที่สุด |
![]() | |
กระบวนทัศน์ | หลากหลายรูปแบบ เช่นการเขียนโปรแกรมเชิงวัตถุ, หรือการเขียนโปรแกรมเชิงฟังก์ชัน |
---|---|
ผู้ออกแบบ | คีโด ฟัน โรสซึม |
ผู้พัฒนา | มูลนิธิซอฟต์แวร์ไพทอน |
เริ่มเมื่อ | ค.ศ. 1990 |
รุ่นเสถียร | 3.8.5[1]
/ 20 มิถุนายน ค.ศ. 2020 |
รุ่นทดลอง | 3.9.0b5[2]
/ 20 กรกฎาคม ค.ศ. 2020 |
ระบบชนิดตัวแปร | Duck, dynamic, strong typing;[3] gradual (ตั้งแต่ 3.5 แต่มองข้ามใน CPython)[4] |
ระบบปฏิบัติการ | ลินุกซ์, วินโดวส์, แมคโอเอส และอื่นๆ |
สัญญาอนุญาต | ลิขสิทธิ์มูลนิธิซอฟต์แวร์ไพทอน |
เว็บไซต์ | www |
ตัวแปลภาษาหลัก | |
CPython, PyPy, Stackless Python, MicroPython, CircuitPython, IronPython, Jython | |
ภาษาย่อย | |
Cython, RPython, Starlark[5] | |
ได้รับอิทธิพลจาก | |
ABC, Perl, Lisp, Smalltalk, Tcl | |
ส่งอิทธิพลต่อ | |
Apache Groovy, Boo, Cobra, CoffeeScript | |
|
- good
อ้างอิง
- ↑ "Python 3.5.0 Release". Python Software Foundation. สืบค้นเมื่อ 13 Sep 2015.
- ↑ "Python 3.9.0b5". Python.org. สืบค้นเมื่อ 20 July 2020.
- ↑ "Why is Python a dynamic language and also a strongly typed language - Python Wiki". wiki.python.org. เก็บจากแหล่งเดิมเมื่อ 14 March 2021. สืบค้นเมื่อ 2021-01-27.
- ↑ "PEP 483 -- The Theory of Type Hints". Python.org. เก็บจากแหล่งเดิมเมื่อ 14 June 2020. สืบค้นเมื่อ 14 June 2018.
- ↑ "Starlark Language". เก็บจากแหล่งเดิมเมื่อ 15 June 2020. สืบค้นเมื่อ 25 May 2019.
แหล่งข้อมูลอื่น
- เว็บหลักของไพทอน (อังกฤษ)