คำถามติดแท็ก python

Python เป็นภาษาการเขียนโปรแกรมตีความระดับสูงแบบไดนามิก การออกแบบมุ่งเน้นไปที่ไวยากรณ์ที่ชัดเจนวิธีการเขียนโปรแกรมเชิงวัตถุและวิธีที่ถูกต้องในการทำสิ่งที่ชัดเจน Python สนับสนุนโมดูลและข้อยกเว้นและมีไลบรารีโมดูลมาตรฐานมากมาย Python มีวัตถุประสงค์ทั่วไปและใช้กันอย่างแพร่หลายตั้งแต่เว็บไปจนถึงระบบฝังตัว

11
หากเราสามารถใช้งานฟังก์ชั่นการเขียนโปรแกรมด้วย Python เราจำเป็นต้องใช้ภาษาโปรแกรมฟังก์ชั่นเฉพาะหรือไม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา การใช้เครื่องกำเนิดไฟฟ้าและแลมบ์ดาเราสามารถทำการเขียนโปรแกรมใช้งานได้กับ Python คุณสามารถบรรลุสิ่งเดียวกันกับทับทิม ดังนั้นคำถามคือทำไมเราต้องใช้ภาษาการเขียนโปรแกรมฟังก์ชั่นเฉพาะเช่น Erlang, Haskell และ Scheme? มีอะไรแตกต่างไปจากภาษาการเขียนโปรแกรมฟังก์ชั่นเฉพาะเหล่านี้หรือไม่? ทำไมเราไม่ใช้ Python ในการเขียนโปรแกรมเพื่อการทำงาน?

3
ทำไมภาษาจำนวนมากจึงปฏิบัติต่อตัวเลขที่เริ่มต้นด้วยเลขฐานแปด
ฉันอ่านแล้วเลขฐานแปดมีประโยชน์อย่างไร และดูเหมือนว่า octals นั้นเป็นสิ่งที่มีประโยชน์กาลครั้งหนึ่งนานมาแล้ว หลายภาษาปฏิบัติกับตัวเลขที่อยู่ก่อนหน้าด้วย 0 เป็นฐานแปดดังนั้นตัวอักษร010จึงเป็น 8 จริง ๆ สองสามอย่างคือ JavaScript, Python (2.7) และ Ruby แต่ฉันไม่เห็นจริง ๆ ว่าทำไมภาษาเหล่านี้จึงต้องการเลขฐานแปดโดยเฉพาะอย่างยิ่งเมื่อมีการใช้สัญกรณ์ที่เป็นไปได้มากขึ้นในการแสดงจำนวนทศนิยมด้วย 0 ที่ไม่จำเป็น JavaScript เป็นภาษาฝั่งไคลเอ็นต์, octal ดูเหมือนว่าไม่มีประโยชน์เลย ทั้งสามมีความทันสมัยในแง่อื่นและฉันไม่คิดว่าจะมีรหัสมากนักโดยใช้สัญกรณ์ฐานแปดที่จะใช้งานไม่ได้โดยการลบ "คุณสมบัติ" นี้ออก ดังนั้นคำถามของฉันคือ: มีจุดใดในภาษาเหล่านี้ที่สนับสนุนตัวอักษรฐานแปด ถ้าตัวอักษรฐานแปดมีความจำเป็นทำไมไม่ใช้สิ่งที่ต้องการ0o10? ทำไมคัดลอกสัญกรณ์เก่าที่แทนที่กรณีการใช้งานที่มีประโยชน์มากกว่า?

4
มีผลข้างเคียงด้านลบของการแยกโมดูลขนาดใหญ่หรือไม่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันกำลังดูโครงการ github และพบโมดูลนี้ซึ่งมีมากกว่า 10,000 บรรทัด เป็นเรื่องธรรมดาที่จะมีรหัสมากในโมดูลเดียวหรือไม่? สำหรับฉันแล้วดูเหมือนว่าสิ่งนี้ควรจะแยกออกเป็นหลายโมดูล อาจเป็นหนึ่งสำหรับเครื่องยนต์ db แต่ละตัว นักพัฒนาได้รับประโยชน์อะไรจากการสร้างโมดูลขนาดใหญ่หนึ่งเช่นนี้ (นอกเหนือจาก "มีทั้งหมดในที่เดียว") หรือมีข้อเสียอะไรจากการแยกมันออกมา (นอกเหนือจาก "ความซับซ้อน")

7
Python เป็นแอปพลิเคชั่นประเภทใดเป็นตัวเลือกที่ไม่ดี [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ฉันเพิ่งเริ่มเรียนรู้ Python และฉันต้องการได้รับบริบทเพิ่มเติมเกี่ยวกับภาษา ฉันรู้ว่าในหลายกรณี Python เป็นภาษาที่ช้าเมื่อเทียบกับ C หรือ C ++ ดังนั้น Python จึงไม่ใช่ทางเลือกที่ดีที่สุดสำหรับแอปพลิเคชั่นที่จำเป็นต้องเรียกใช้โดยเร็วที่สุด นอกเหนือจากนี้ดูเหมือนว่า Python เป็นภาษาวัตถุประสงค์ทั่วไปที่ยอดเยี่ยมซึ่งง่ายต่อการอ่านและเขียน ห้องสมุดที่มีให้นั้นมีฟังก์ชั่นจำนวนมาก นอกเหนือจากแอปพลิเคชั่นที่สำคัญด้านประสิทธิภาพแล้วมันเป็นตัวเลือกที่ไม่ดีที่จะใช้ Python (และทำไม)
21 python 

9
จำเป็นหรือไม่ที่จะต้องเรียนรู้อัลกอริทึมให้เป็นโปรแกรมเมอร์ตัวจริง? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเป็นโปรแกรมเมอร์ PHP และจนถึงตอนนี้ฉันไม่จำเป็นต้องเรียนรู้ขั้นตอนวิธี ... ตอนนี้ฉันเริ่มเรียนรู้ Python (ภาษาการเขียนโปรแกรมจริง) เพราะฉันต้องใช้ matplotlib มันสมเหตุสมผลหรือไม่ที่จะเริ่มต้นด้วยการอ่านหนังสือ Python algorithm จากนั้นเรียนรู้ matplotlib และ numpy หรือฉันควรข้ามไปยัง matplotlib และ numpy? ด้วยความเคารพ,

3
@ staticmethod เทียบกับฟังก์ชั่นระดับโมดูล
นี่ไม่เกี่ยวกับ@staticmethodและ@classmethod! ฉันรู้ว่าstaticmethodทำงานอย่างไร สิ่งที่ฉันต้องการทราบคือกรณีการใช้งานที่เหมาะสมสำหรับ@staticmethodvs. ฟังก์ชันระดับโมดูล ฉันได้ลองคำถามนี้และดูเหมือนว่ามีข้อตกลงทั่วไปที่ต้องการฟังก์ชั่นโมดูลในระดับมากกว่าวิธีคงที่เพราะมันเป็นแบบ pythonic วิธีการแบบสแตติกมีข้อได้เปรียบของการถูกผูกไว้กับคลาสของมันซึ่งอาจสมเหตุสมผลถ้าคลาสนั้นใช้เท่านั้น อย่างไรก็ตามในฟังก์ชั่น Python มักจะจัดระเบียบโดยโมดูลไม่ได้เรียนดังนั้นมักจะทำให้ฟังก์ชั่นโมดูลทำให้รู้สึกเกินไป วิธีการแบบสแตติกสามารถแทนที่ได้ด้วยคลาสย่อยซึ่งเป็นข้อดีหรือข้อเสียขึ้นอยู่กับว่าคุณมองอย่างไร แม้ว่าวิธีการแบบสแตติกมักจะ "บริสุทธิ์ตามหน้าที่" ดังนั้นการเอาชนะมันอาจไม่ฉลาด แต่บางครั้งก็สะดวก (แม้ว่านี่อาจเป็นหนึ่งใน "สะดวก แต่ไม่เคยทำ" สิ่งที่มี แต่ประสบการณ์เท่านั้นที่สามารถสอนคุณได้) มีกฎทั่วไปหรือไม่สำหรับการใช้ฟังก์ชั่นสแตติกวิธีการหรือโมดูลระดับ? พวกเขามีข้อดีหรือข้อเสียที่เป็นรูปธรรมใดบ้าง (เช่นส่วนขยายในอนาคตส่วนขยายภายนอกความสามารถในการอ่าน) ถ้าเป็นไปได้ก็ให้ตัวอย่างกรณี
21 python 

3
วิธีการแยก UI จากตรรกะบนแอป Pyqt / Qt อย่างถูกต้อง?
ผมเคยอ่านค่อนข้างมากเกี่ยวกับเรื่องนี้ในอดีตและเฝ้าดูการเจรจาที่น่าสนใจบางเช่นเดียวจากนี้ลุงบ๊อบ ถึงกระนั้นฉันมักจะพบว่ามันยากที่จะออกแบบสก์ท็อปของฉันอย่างถูกต้องและแยกแยะความแตกต่างซึ่งควรเป็นความรับผิดชอบในด้านUIและสิ่งที่อยู่ในด้านตรรกะ สรุปโดยย่อเกี่ยวกับแนวทางปฏิบัติที่ดีคือสิ่งนี้ คุณควรออกแบบตรรกะของคุณแยกจาก UI ดังนั้นวิธีที่คุณสามารถใช้ (ในทางทฤษฎี) ไลบรารีของคุณไม่ว่าจะเป็นแบ็กเอนด์ / UI ใด ๆ สิ่งนี้หมายความว่าโดยพื้นฐานแล้ว UI ควรเป็นคนโง่ที่สุดและควรทำการประมวลผลอย่างหนักที่ด้านตรรกะ ถ้าอย่างนั้นฉันก็สามารถใช้ไลบรารี่ที่สวยงามของฉันกับแอพพลิเคชั่นคอนโซลเว็บแอพพลิเคชั่น นอกจากนี้ลุงบ๊อบแนะนำการอภิปรายที่แตกต่างกันของเทคโนโลยีที่ใช้จะให้ประโยชน์มากมาย (อินเทอร์เฟซที่ดี) แนวคิดการชะลอตัวนี้ช่วยให้คุณมีเอนทิตี้ที่ผ่านการทดสอบอย่างดีซึ่งฟังดูดี แต่ก็ยังยุ่งยาก ดังนั้นฉันรู้ว่าคำถามนี้เป็นคำถามที่ค่อนข้างกว้างขวางซึ่งมีการพูดคุยกันหลายครั้งผ่านอินเทอร์เน็ตทั้งหมดและในหนังสือที่ดีมากมาย ดังนั้นเพื่อให้ได้สิ่งที่ดีออกมาฉันจะโพสต์ตัวอย่างตัวอย่างเล็ก ๆ น้อย ๆ ที่พยายามใช้ MCV บน pyqt: import sys import os import random from PyQt5 import QtWidgets from PyQt5 import QtGui from PyQt5 import QtCore random.seed(1) class Model(QtCore.QObject): …
20 design  python  mvc  gui  coupling 

4
ฉันควรใช้ข้อยกเว้นเมื่อใดและอย่างไร
การตั้งค่า ฉันมักจะมีปัญหาในการกำหนดเวลาและวิธีใช้ข้อยกเว้น ลองพิจารณาตัวอย่างง่ายๆ: สมมติว่าฉันกำลังขูดหน้าเว็บให้พูดว่า " http://www.abevigoda.com/ " เพื่อพิจารณาว่า Abe Vigoda ยังมีชีวิตอยู่หรือไม่ ในการทำสิ่งนี้สิ่งที่เราต้องทำคือดาวน์โหลดหน้าและค้นหาเวลาที่วลี "Abe Vigoda" ปรากฏขึ้น เรากลับมาปรากฏตัวครั้งแรกเนื่องจากมีสถานะของ Abe ตามแนวคิดแล้วจะมีลักษณะดังนี้: def get_abe_status(url): # download the page page = download_page(url) # get all mentions of Abe Vigoda hits = page.find_all_mentions("Abe Vigoda") # parse the first hit for his status status = parse_abe_status(hits[0]) # …

3
ฉันจะแสดงความสัมพันธ์ที่ลึกซึ้งในข้อมูลของฉันได้อย่างไร
"A" เกี่ยวข้องกับ "B" และ "C" ฉันจะแสดงให้เห็นว่า "B" และ "C" อาจเกี่ยวข้องกับบริบทนี้ได้อย่างไร ตัวอย่าง: นี่คือหัวข้อข่าวบางส่วนเกี่ยวกับละครบรอดเวย์ล่าสุด: Glengarry Glen Ross ของ David Mamet นำแสดงโดย Al Pacino เปิดบรอดเวย์ Al Pacino ใน 'Glengarry Glen Ross': นักวิจารณ์คิดอย่างไร Al Pacino ได้รับบทวิจารณ์ที่ไม่สดใสสำหรับบทละครบรอดเวย์ รีวิวโรงละคร: Glengarry Glen Ross กำลังขายดาวของมันอย่างหนัก Glengarry Glen Ross; เฮ้ใครฆ่าไฟ Klieg? ปัญหา: การเรียกใช้ฟัซซี่ - สตริงที่ตรงกันกับระเบียนเหล่านี้จะสร้างความสัมพันธ์บางอย่าง แต่ไม่ใช่อื่น ๆ แม้ว่าผู้อ่านของมนุษย์สามารถเลือกพวกเขาออกจากบริบทในชุดข้อมูลที่มีขนาดใหญ่กว่ามาก ฉันจะค้นหาความสัมพันธ์ที่แนะนำ …

6
แนวทางปฏิบัติที่ดีที่สุดในการเขียนความคิดเห็นและเอกสาร
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 7 ปีที่ผ่านมา การแสดงความคิดเห็นในปัจจุบันนั้นง่ายกว่าที่เคย ใน Java มีเทคนิคที่ดีในการเชื่อมความคิดเห็นไปยังคลาสและ Java IDEs สามารถสร้างเชลล์ความคิดเห็นให้คุณได้ดี ภาษาเช่น Clojure ช่วยให้คุณสามารถเพิ่มคำอธิบายของฟังก์ชันในโค้ดฟังก์ชันเองเป็นอาร์กิวเมนต์ อย่างไรก็ตามเรายังคงอยู่ในยุคที่มักมีความคิดเห็นล้าสมัยหรือไม่ดีเขียนโดยนักพัฒนาที่ดี - ฉันสนใจที่จะปรับปรุงความทนทานและประโยชน์ของความคิดเห็นของฉัน โดยเฉพาะฉันสนใจ Java / Clojure / Python ที่นี่ แต่คำตอบไม่จำเป็นต้องเฉพาะภาษา มีเทคนิคใด ๆ ที่เกิดขึ้นใหม่ที่ตรวจสอบความคิดเห็นและตรวจสอบความคิดเห็น "บอบบาง" โดยอัตโนมัติ (ตัวอย่างเช่นความคิดเห็นที่มีหมายเลขเวทย์มนตร์ประโยคที่ไม่สมบูรณ์ ฯลฯ ) หรือความคิดเห็นที่ไม่ถูกต้อง (ตัวอย่างเช่นการตรวจสอบตัวแปรที่สะกดผิด และที่สำคัญยิ่งกว่า: มี "นโยบายการแสดงความคิดเห็น" หรือกลยุทธ์ที่ยอมรับได้หรือไม่? มีคำแนะนำมากมายเกี่ยวกับวิธีการเขียนโค้ด - แต่จะมีวิธีการอย่างไรในการแสดงความคิดเห็น?

5
มีกรอบมาตรฐานเดียวสำหรับการพัฒนาแอพ Python GUI หรือไม่?
มีเฟรมเวิร์กมากมายสำหรับการเขียนแอปพลิเคชัน GUI โดยใช้ Python แต่มีกรอบมาตรฐานที่สำคัญอย่างใดอย่างหนึ่งหรือไม่ ตัวอย่างเช่นเรามี. NET / C # ใน Visual Studio ฉันคิดในมุมมองอื่นเช่นกัน ในอนาคตถ้าฉันให้สัมภาษณ์งานโปรแกรมเมอร์ Python กรอบงาน GUI จะได้รับการพิจารณาอย่างไร ฉันยังสงสัยว่าไม่มี IDE ที่รวมภาษา GUI และ Python ตัวเลือกของรสชาตินั้นดี แต่การเลือกแบบเกินความจำเป็น
20 python 

7
Python อาร์กิวเมนต์เริ่มต้นที่ไม่แน่นอน: ทำไม
ฉันรู้ว่าข้อโต้แย้งเริ่มต้นจะถูกสร้างขึ้นในเวลาเริ่มต้นฟังก์ชั่นและไม่ได้ทุกครั้งที่ฟังก์ชั่นที่เรียกว่า ดูรหัสต่อไปนี้: def ook (item, lst=[]): lst.append(item) print 'ook', lst def eek (item, lst=None): if lst is None: lst = [] lst.append(item) print 'eek', lst max = 3 for x in xrange(max): ook(x) for x in xrange(max): eek(x) สิ่งที่ฉันไม่ได้รับคือสาเหตุที่ทำให้เกิดสิ่งนี้ขึ้น พฤติกรรมนี้มีประโยชน์อย่างไรในการเริ่มต้นในแต่ละครั้งที่โทร?
20 python 

4
ทำไม coroutines ถึงกลับมา? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ส่วนใหญ่ของรากฐานสำหรับ coroutines เกิดขึ้นใน 60s / 70s แล้วหยุดในความโปรดปรานของทางเลือก (เช่นหัวข้อ) มีสารใด ๆ ที่สนใจต่ออายุใน coroutines ที่เกิดขึ้นในหลามและภาษาอื่น ๆ ?

4
เครื่องหมายโคลอนในบล็อกหลามเป็นสิ่งจำเป็นทางเทคนิคหรือไม่
นี่เป็นเพียงคำถามเชิงทฤษฎีของ newbie ใหญ่ที่ต้องการเข้าใจมากขึ้น ฉันลืมโคลอนไปเรื่อย ๆ หลังจากบล็อกข้อความเริ่มต้นในไพ ธ อน นี่คือสิ่งที่ฉันหมายถึง: for <variable> in <sequence>: if <blah blah>: ความคิดของฉันคือเหตุผลหนึ่งที่ฉันลืมอยู่เสมอว่ามันเป็นความจริงโดยนัย: โคลอนหรือไม่คำแถลงลงท้ายด้วยบรรทัดนั้น คำถามของฉัน - ที่ฉันถามเพื่อเรียนรู้วิธีการทำงานของ python ไวยากรณ์ - ไม่ว่าลำไส้ใหญ่ไม่จำเป็นจริงๆ? ฉันจะเปลี่ยนไวยากรณ์ของไพ ธ อนเพื่อไม่ให้โคลอนไม่จำเป็นอีกต่อไปแล้วจะมีอะไรแตกหรือไม่ นั่นจะทำให้ข้อความบางอย่างคลุมเครือหรือเป็นไปไม่ได้ไหม?
19 python  syntax  theory 

1
เหตุใดจึงต้องใช้คลาสเมื่อตั้งโปรแกรม tkinter gui ใน python
ฉันเขียนโปรแกรมใน python เป็นหลักและตั้งโปรแกรม GUI สองตัวด้วย Tkinter การสอนทุกครั้งที่ฉันเคยเห็นได้แนะนำให้กำหนดและใช้คลาสสำหรับ GUI แต่ GUI ของฉันทำงานได้อย่างไร้ที่ติโดยใช้เพียงโพรซีเดอร์เท่านั้น ทำไมต้องใช้คลาส ดูเหมือนว่าจากมุมมองของฉันเพียงแค่เพิ่มเลเยอร์ความซับซ้อนและโค้ดที่ไม่จำเป็นออกไป
19 python  gui  class 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.