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

Python เป็นภาษาการเขียนโปรแกรมแบบหลายกระบวนทัศน์แบบไดนามิกพิมพ์อเนกประสงค์ มันถูกออกแบบมาให้เรียนรู้เข้าใจและใช้งานได้อย่างรวดเร็วและบังคับใช้ไวยากรณ์ที่สะอาดและสม่ำเสมอ โปรดทราบว่า Python 2 สนับสนุนอย่างเป็นทางการตั้งแต่วันที่ 01-01-2020 สำหรับคำถาม Python เฉพาะรุ่นให้เพิ่มแท็ก [python-2.7] หรือ [python-3.x] เมื่อใช้ตัวแปรหรือไลบรารี Python (เช่น Jython, PyPy, Pandas, Numpy) โปรดรวมไว้ในแท็ก

6
ความเข้าใจในรายการจะย้อนชื่อแม้จะอยู่ในขอบเขตของความเข้าใจ นี่ใช่มั้ย?
ความเข้าใจกำลังมีปฏิสัมพันธ์ที่ไม่คาดคิดกับการกำหนดขอบเขต นี่คือพฤติกรรมที่คาดหวังหรือไม่? ฉันมีวิธีการ: def leave_room(self, uid): u = self.user_by_id(uid) r = self.rooms[u.rid] other_uids = [ouid for ouid in r.users_by_id.keys() if ouid != u.uid] other_us = [self.user_by_id(uid) for uid in other_uids] r.remove_user(uid) # OOPS! uid has been re-bound by the list comprehension above # Interestingly, it's rebound to the last uid …

3
วิธีคอมไพล์สคริปต์ python เป็นไบนารีปฏิบัติการ
ฉันต้องการแปลงสคริปต์ Python เป็นไฟล์ปฏิบัติการของ Windows ฉันติดตั้ง Python 2.6 ไปที่python26. C:\pythonscriptผมได้สร้างหนึ่งสคริปต์และเก็บมันไว้ใน ภายในโฟลเดอร์นี้มีไฟล์สองไฟล์ Setup.pyและoldlogs.py(ไฟล์นี้ต้องการการครอบคลุม) setup.py รหัสคือ from distutils.core import setup import py2exe setup(console=['oldlogs.py']) ฉันจะแปลง oldlogs.py เป็นไฟล์ exe ได้อย่างไร?

9
ใน Tensorflow รับชื่อของ Tensors ทั้งหมดในกราฟ
ฉันกำลังสร้างตาข่ายประสาทด้วยTensorflowและskflow; ด้วยเหตุผลบางอย่างที่ฉันต้องการที่จะได้รับค่าของเทนเซอร์ภายในบางอย่างสำหรับการป้อนข้อมูลที่กำหนดดังนั้นฉันใช้myClassifier.get_layer_value(input, "tensorName"), การเป็นmyClassifierskflow.estimators.TensorFlowEstimator อย่างไรก็ตามฉันพบว่ายากที่จะหาไวยากรณ์ที่ถูกต้องของชื่อเทนเซอร์แม้จะรู้ชื่อ (และฉันก็สับสนระหว่างการดำเนินการกับเทนเซอร์) ดังนั้นฉันจึงใช้เทนเซอร์บอร์ดเพื่อพล็อตกราฟและมองหาชื่อ มีวิธีแจกแจงเทนเซอร์ทั้งหมดในกราฟโดยไม่ใช้เทนเซอร์บอร์ดหรือไม่?

8
เหตุใด + = จึงทำงานโดยไม่คาดคิดในรายการ
+=ผู้ประกอบการในหลามดูเหมือนว่าจะมีการดำเนินงานอย่างไม่คาดคิดในรายการ ใครช่วยบอกทีว่าเกิดอะไรขึ้นที่นี่? class foo: bar = [] def __init__(self,x): self.bar += [x] class foo2: bar = [] def __init__(self,x): self.bar = self.bar + [x] f = foo(1) g = foo(2) print f.bar print g.bar f.bar += [3] print f.bar print g.bar f.bar = f.bar + [4] print f.bar print g.bar …

10
การเข้าถึงองค์ประกอบของพจนานุกรม Python ด้วยดัชนี
พิจารณาคำสั่งเช่น mydict = { 'Apple': {'American':'16', 'Mexican':10, 'Chinese':5}, 'Grapes':{'Arabian':'25','Indian':'20'} } ฉันจะเข้าถึงเช่นองค์ประกอบเฉพาะของพจนานุกรมนี้ได้อย่างไร ตัวอย่างเช่นฉันต้องการพิมพ์องค์ประกอบแรกหลังจากจัดรูปแบบองค์ประกอบแรกของ Apple ซึ่งในกรณีของเราคือ 'อเมริกัน' เท่านั้น? ข้อมูลเพิ่มเติมโครงสร้างข้อมูลข้างต้นสร้างขึ้นโดยการแยกวิเคราะห์ไฟล์อินพุตในฟังก์ชัน python เมื่อสร้างขึ้นแล้วอย่างไรก็ตามจะยังคงเหมือนเดิมสำหรับการรันนั้น ฉันใช้โครงสร้างข้อมูลนี้ในฟังก์ชันของฉัน ดังนั้นหากไฟล์มีการเปลี่ยนแปลงในครั้งต่อไปที่เรียกใช้แอปพลิเคชันนี้เนื้อหาของไฟล์จะแตกต่างกันดังนั้นเนื้อหาของโครงสร้างข้อมูลนี้จะแตกต่างกัน แต่รูปแบบจะเหมือนกัน คุณจะเห็นว่าฉันอยู่ในฟังก์ชันของฉันฉันไม่รู้ว่าองค์ประกอบแรกใน Apple คือ 'อเมริกัน' หรืออย่างอื่นดังนั้นฉันจึงไม่สามารถใช้ 'อเมริกัน' เป็นกุญแจได้โดยตรง
118 python  dictionary 

9
Python จัดการ int และ long อย่างไร?
มีใครรู้บ้างว่า Python จัดการประเภท int และ long ภายในอย่างไร มันเลือกประเภทที่เหมาะสมแบบไดนามิกหรือไม่? ขีด จำกัด สำหรับ int คืออะไร? ฉันใช้ Python 2.6 แตกต่างจากเวอร์ชันก่อนหน้าหรือไม่ ฉันจะเข้าใจโค้ดด้านล่างได้อย่างไร? >>> print type(65535) <type 'int'> >>> print type(65536*65536) <type 'long'> ปรับปรุง: >>> print type(0x7fffffff) <type 'int'> >>> print type(0x80000000) <type 'long'>
118 python  integer 

4
Python xml ElementTree จากแหล่งสตริง?
ElementTree.parse อ่านจากไฟล์ฉันจะใช้สิ่งนี้ได้อย่างไรหากฉันมีข้อมูล XML ในสตริงอยู่แล้ว บางทีฉันอาจจะพลาดอะไรบางอย่างที่นี่ แต่ต้องมีวิธีใช้ ElementTree โดยไม่ต้องเขียนสตริงลงในไฟล์แล้วอ่านอีกครั้ง xml.etree.elementtree
118 python  xml 

4
วิธีรับดัชนีขององค์ประกอบสูงสุดในอาร์เรย์ตัวเลขตามแกนเดียว
ฉันมีอาร์เรย์ NumPy 2 มิติ ฉันรู้วิธีรับค่าสูงสุดบนแกน: >>> a = array([[1,2,3],[4,3,1]]) >>> amax(a,axis=0) array([4, 3, 3]) ฉันจะรับดัชนีขององค์ประกอบสูงสุดได้อย่างไร ดังนั้นฉันต้องการเป็นเอาต์พุตarray([1,1,0])
118 python  numpy  max  indices 

5
Python: ผูกวิธีหลุด?
ใน Python มีวิธีการผูก unbound method โดยไม่ต้องเรียกมันหรือไม่? ฉันกำลังเขียนโปรแกรม wxPython และสำหรับบางคลาสฉันคิดว่ามันเป็นการดีที่จะจัดกลุ่มข้อมูลของปุ่มทั้งหมดของฉันเข้าด้วยกันเป็นรายการทูเปิลระดับคลาสเช่น: class MyWidget(wx.Window): buttons = [("OK", OnOK), ("Cancel", OnCancel)] # ... def Setup(self): for text, handler in MyWidget.buttons: # This following line is the problem line. b = wx.Button(parent, label=text).Bind(wx.EVT_BUTTON, handler) ปัญหาคือเนื่องจากค่าทั้งหมดhandlerเป็นวิธีการที่ไม่ถูกผูกไว้โปรแกรมของฉันจึงระเบิดออกมาเป็นเปลวไฟที่งดงามและฉันก็ร้องไห้ ฉันมองหาวิธีแก้ปัญหาทางออนไลน์เกี่ยวกับสิ่งที่ดูเหมือนว่าควรจะเป็นปัญหาที่ค่อนข้างตรงไปตรงมาและแก้ไขได้ น่าเสียดายที่ไม่พบอะไรเลย ตอนนี้ฉันกำลังใช้functools.partialเพื่อแก้ไขปัญหานี้ แต่มีใครรู้บ้างว่ามีวิธี Pythonic ที่สะอาดและมีสุขภาพดีในการผูกวิธีที่ไม่ถูกผูกไว้กับอินสแตนซ์และดำเนินการต่อโดยไม่เรียกมัน
118 python  class  methods  bind 

7
การทำเธรดในแอปพลิเคชัน PyQt: ใช้เธรด Qt หรือเธรด Python?
ฉันกำลังเขียนแอปพลิเคชัน GUI ที่ดึงข้อมูลผ่านการเชื่อมต่อเว็บเป็นประจำ เนื่องจากการดึงข้อมูลนี้ใช้เวลาสักครู่จึงทำให้ UI ไม่ตอบสนองในระหว่างกระบวนการดึงข้อมูล (ไม่สามารถแบ่งออกเป็นส่วนย่อย ๆ ได้) นี่คือเหตุผลที่ฉันต้องการจ้างการเชื่อมต่อเว็บไปยังเธรดผู้ปฏิบัติงานแยกต่างหาก [ใช่ฉันรู้แล้วตอนนี้ฉันมีปัญหาสองอย่าง] อย่างไรก็ตามแอปพลิเคชันใช้ PyQt4 ดังนั้นฉันต้องการทราบว่าทางเลือกที่ดีกว่าคืออะไร: ใช้เธรดของ Qt หรือใช้threadingโมดูลPython ? ข้อดี / ข้อเสียของแต่ละข้อคืออะไร? หรือคุณมีข้อเสนอแนะที่แตกต่างไปจากเดิมอย่างสิ้นเชิง? แก้ไข (รางวัลใหม่):ในขณะที่วิธีแก้ปัญหาในกรณีเฉพาะของฉันอาจจะใช้คำขอเครือข่ายที่ไม่ปิดกั้นเช่นที่Jeff OberและLukáš Lalinsk (แนะนำ (โดยทั่วไปแล้วจะทิ้งปัญหาการทำงานพร้อมกันไปยังการใช้งานเครือข่าย) แต่ฉันก็ยังต้องการมากกว่านี้ คำตอบเชิงลึกสำหรับคำถามทั่วไป: ข้อดีและข้อเสียของการใช้เธรด PyQt4 (เช่น Qt) บนเธรด Python ดั้งเดิม (จากthreadingโมดูล) คืออะไร? แก้ไข 2:ขอบคุณทุกคำตอบ แม้ว่าจะไม่มีข้อตกลง 100% แต่ดูเหมือนว่าจะมีความเห็นเป็นเอกฉันท์อย่างกว้างขวางว่าคำตอบคือ "ใช้ Qt" เนื่องจากข้อดีของสิ่งนั้นคือการรวมเข้ากับส่วนที่เหลือของห้องสมุดในขณะที่ไม่มีข้อเสียที่แท้จริง สำหรับใครก็ตามที่ต้องการเลือกระหว่างการใช้งานเธรดสองแบบฉันขอแนะนำให้พวกเขาอ่านคำตอบทั้งหมดที่ให้ไว้ที่นี่รวมถึงเธรดรายชื่อเมลของ PyQt ที่เจ้าอาวาสลิงก์ไปด้วย …

6
ใน Python ฉันควรใช้ฟังก์ชันแทนเมธอดเมื่อใด
Zen of Python ระบุว่าควรมีเพียงวิธีเดียวในการทำสิ่งต่างๆ แต่บ่อยครั้งที่ฉันประสบปัญหาในการตัดสินใจว่าจะใช้ฟังก์ชันเมื่อใดเทียบกับเมื่อใดควรใช้วิธีการ ลองดูตัวอย่างเล็กน้อย - วัตถุ ChessBoard สมมติว่าเราต้องการวิธีการบางอย่างเพื่อให้ได้การเคลื่อนไหวของกษัตริย์ตามกฎหมายทั้งหมดที่มีอยู่บนกระดาน เราเขียน ChessBoard.get_king_moves () หรือ get_king_moves (chess_board)? นี่คือคำถามที่เกี่ยวข้องบางส่วนที่ฉันดู: ทำไมหลามถึงใช้ 'วิธีวิเศษ'? มีเหตุผลที่สตริง Python ไม่มีเมธอดความยาวสตริงหรือไม่? คำตอบที่ฉันได้รับส่วนใหญ่สรุปไม่ได้: เหตุใด Python จึงใช้เมธอดสำหรับฟังก์ชันบางอย่าง (เช่น list.index ()) แต่ฟังก์ชันอื่น ๆ (เช่น len (รายการ)) เหตุผลสำคัญคือประวัติศาสตร์ ฟังก์ชั่นถูกใช้สำหรับการดำเนินการที่เป็นแบบทั่วไปสำหรับกลุ่มของประเภทและมีจุดมุ่งหมายเพื่อใช้งานได้แม้กระทั่งกับอ็อบเจ็กต์ที่ไม่มีเมธอดเลย (เช่นทูเปิล) นอกจากนี้ยังสะดวกที่จะมีฟังก์ชันที่สามารถนำไปใช้กับคอลเลกชันอสัณฐานได้อย่างง่ายดายเมื่อคุณใช้คุณสมบัติการทำงานของ Python (map (), apply () et al) ในความเป็นจริงการนำ len (), max (), …

19
กรณีการใช้งาน (คอนกรีต) อะไรบ้างสำหรับแว่นตา?
ฉันมีเพื่อนคนหนึ่งที่ชอบใช้เมตาแว่นตาและเสนอวิธีแก้ปัญหาให้พวกเขาเป็นประจำ ฉันคิดว่าคุณแทบไม่จำเป็นต้องใช้เมตาแว่นตาเลย ทำไม? เพราะฉันคิดว่าถ้าคุณทำอะไรแบบนั้นกับชั้นเรียนคุณน่าจะทำกับวัตถุ และการออกแบบ / refactor ขนาดเล็กเป็นไปตามลำดับ ความสามารถในการใช้ metaclasses ทำให้ผู้คนจำนวนมากในหลาย ๆ แห่งใช้คลาสเป็นวัตถุอัตราสองซึ่งดูเหมือนจะเป็นหายนะสำหรับฉัน การเขียนโปรแกรมจะถูกแทนที่ด้วย meta-programming หรือไม่? การเพิ่มนักตกแต่งชั้นเรียนทำให้เป็นที่ยอมรับมากยิ่งขึ้น ดังนั้นฉันอยากทราบกรณีการใช้งานที่ถูกต้อง (ที่เป็นรูปธรรม) ของคุณสำหรับ metaclasses ใน Python หรือเพื่อให้รู้แจ้งว่าทำไมคลาสการกลายพันธุ์จึงดีกว่าการกลายพันธุ์วัตถุในบางครั้ง ฉันจะเริ่ม: บางครั้งเมื่อใช้ไลบรารีของบุคคลที่สามจะมีประโยชน์ที่จะสามารถเปลี่ยนคลาสด้วยวิธีใดวิธีหนึ่ง (นี่เป็นกรณีเดียวที่ฉันคิดได้และมันไม่เป็นรูปธรรม)
118 python  metaclass 

21
ค้นหาการเกิดสตริงย่อยที่ n ในสตริง
ดูเหมือนว่ามันน่าจะเป็นเรื่องเล็กน้อย แต่ฉันยังใหม่กับ Python และต้องการทำแบบ Pythonic มากที่สุด ฉันต้องการค้นหาดัชนีที่สอดคล้องกับการเกิดขึ้นของสตริงย่อยภายในสตริง จะต้องมีบางสิ่งที่เทียบเท่ากับสิ่งที่ฉันต้องการทำซึ่งก็คือ mystring.find("substring", 2nd) คุณจะบรรลุสิ่งนี้ใน Python ได้อย่างไร?
118 python  string  substring 


6
วิธีค้นหาลูกของโหนดโดยใช้ BeautifulSoup
ฉันต้องการรับ<a>แท็กทั้งหมดที่เป็นลูกของ<li>: <div> <li class="test"> <a>link1</a> <ul> <li> <a>link2</a> </li> </ul> </li> </div> ฉันรู้วิธีค้นหาองค์ประกอบที่มีคลาสเฉพาะเช่นนี้: soup.find("li", { "class" : "test" }) แต่ฉันไม่รู้ว่าจะหาทั้งหมด<a>ที่เป็นลูกของ<li class=test>คนอื่นได้อย่างไร เช่นฉันต้องการเลือก: <a>link1</a>

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