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

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


6
สร้างหัวข้อในหลาม
ฉันมีสคริปต์และฉันต้องการให้ฟังก์ชันหนึ่งทำงานในเวลาเดียวกันกับอีกฟังก์ชันหนึ่ง โค้ดตัวอย่างที่ฉันได้ดู: import threading def MyThread (threading.thread): # doing something........ def MyThread2 (threading.thread): # doing something........ MyThread().start() MyThread2().start() ฉันมีปัญหาในการทำงานนี้ ฉันอยากจะใช้ฟังก์ชันเธรดแทนคลาส นี่คือสคริปต์ทำงาน: from threading import Thread class myClass(): def help(self): os.system('./ssh.py') def nope(self): a = [1,2,3,4,5,6,67,78] for i in a: print i sleep(1) if __name__ == "__main__": Yep = myClass() thread …

10
ตัวอย่างการใช้ข้อความ“ ดำเนินการต่อ” ใน Python หรือไม่
นิยามของcontinueคำสั่งคือ: continueคำสั่งยังคงมีการย้ำต่อไปของวง ฉันไม่พบตัวอย่างที่ดีของรหัส มีคนแนะนำกรณีง่าย ๆ ที่continueจำเป็นไหม
177 python  continue 

6
การกำหนดขอบเขตใน Python 'เป็น' ลูป
ฉันไม่ได้ถามเกี่ยวกับกฎการกำหนดขอบเขตของไพ ธ อน ฉันเข้าใจโดยทั่วไปว่าการกำหนดขอบเขตทำงานใน Python สำหรับลูป คำถามของฉันคือทำไมการตัดสินใจออกแบบในลักษณะนี้ ตัวอย่างเช่น (ไม่มีการเล่นสำนวนเจตนา): for foo in xrange(10): bar = 2 print(foo, bar) ด้านบนจะพิมพ์ (9,2) สิ่งนี้ทำให้ฉันแปลกประหลาด: 'foo' เป็นเพียงการควบคุมวงและ 'บาร์' ถูกกำหนดไว้ในวง ฉันสามารถเข้าใจได้ว่าทำไมมันอาจจำเป็นสำหรับ 'บาร์' ที่จะสามารถเข้าถึงได้นอกลูป (มิฉะนั้นสำหรับลูปจะมีฟังก์ชันที่ จำกัด มาก) สิ่งที่ฉันไม่เข้าใจคือสาเหตุที่ตัวแปรควบคุมยังคงอยู่ในขอบเขตหลังจากวนออก จากประสบการณ์ของฉันมันเพียงแค่ตัดเนมสเปซส่วนกลางและทำให้การติดตามข้อผิดพลาดที่ล่ามในภาษาอื่น ๆ ทำได้ยากขึ้น
177 python  scope 

4
การเปลี่ยนแปลงคำสั่ง import python3
ฉันไม่เข้าใจสิ่งต่อไปนี้จากpep-0404 ใน Python 3 การอิมพอร์ตสัมพัทธ์โดยนัยภายในแพ็คเกจไม่สามารถทำได้อีกต่อไป - รองรับการนำเข้าสัมบูรณ์และการนำเข้าสัมพัทธ์อย่างชัดเจนเท่านั้น นอกจากนี้การนำเข้ารูปดาว (เช่นจากการนำเข้า x *) ได้รับอนุญาตในรหัสระดับโมดูลเท่านั้น การนำเข้าแบบสัมพันธ์คืออะไร อนุญาตการนำเข้าดาวในสถานที่อื่นได้อีกใน python2 กรุณาอธิบายด้วยตัวอย่าง
177 python  python-3.x 

4
วนรอบรายการใน Python
ฉันมีรายการที่มีรายการย่อยในนั้น ฉันต้องการพิมพ์รายการย่อยทั้งหมดที่มีความยาวเท่ากับ 3 ฉันกำลังทำสิ่งต่อไปนี้ในหลาม: for x in values[:]: if len(x) == 3: print(x) valuesเป็นรายการดั้งเดิม โค้ดด้านบนพิมพ์ทุกรายการย่อยที่มีความยาวเท่ากับ 3 สำหรับแต่ละค่าxหรือไม่? ฉันต้องการที่จะแสดงรายการย่อยที่length == 3เดียวเท่านั้น ปัญหาได้รับการแก้ไขแล้ว ปัญหาเกิดขึ้นกับตัวแก้ไข Eclipse ฉันไม่เข้าใจเหตุผล แต่แสดงเพียงครึ่งหนึ่งของรายการเมื่อเรียกใช้ลูป มีการตั้งค่าใด ๆ ที่ฉันต้องเปลี่ยนใน Eclipse หรือไม่?
177 python  list 

3
กำลังรับรายการของรายการลงใน DataFrame แพนด้า
ฉันกำลังอ่านเนื้อหาของสเปรดชีตเป็นแพนด้า DataNitro มีวิธีการที่ส่งกลับการเลือกรูปสี่เหลี่ยมผืนผ้าของเซลล์เป็นรายการ ดังนั้น table = Cell("A1").table จะช่วยให้ table = [['Heading1', 'Heading2'], [1 , 2], [3, 4]] headers = table.pop(0) # gives the headers as list and leaves data ฉันกำลังยุ่งกับการเขียนโค้ดเพื่อแปลสิ่งนี้ แต่ฉันเดาว่ามันเป็นการใช้งานง่ายที่ต้องมีวิธีในการทำสิ่งนี้ ดูเหมือนจะไม่พบมันในเอกสารประกอบ ตัวชี้ใด ๆ สำหรับวิธีการที่จะทำให้สิ่งนี้ง่ายขึ้น?
177 python  pandas  datanitro 

12
random.seed (): มันทำอะไร?
ฉันค่อนข้างสับสนกับสิ่งที่random.seed()เกิดขึ้นใน Python ตัวอย่างเช่นเหตุใดการทดลองด้านล่างจึงทำในสิ่งที่พวกเขาทำ (สม่ำเสมอ) >>> import random >>> random.seed(9001) >>> random.randint(1, 10) 1 >>> random.randint(1, 10) 3 >>> random.randint(1, 10) 6 >>> random.randint(1, 10) 6 >>> random.randint(1, 10) 7 ฉันไม่พบเอกสารที่ดีเกี่ยวกับเรื่องนี้

11
Python ตรวจสอบว่า Word อยู่ในสตริงหรือไม่
ฉันทำงานกับ Python v2 และฉันพยายามค้นหาว่าคุณสามารถบอกได้ไหมว่าคำนั้นอยู่ในสตริง ฉันพบข้อมูลบางอย่างเกี่ยวกับการระบุว่าคำนั้นอยู่ในสตริงหรือไม่โดยใช้. find แต่มีวิธีทำคำสั่ง IF ฉันต้องการมีสิ่งต่อไปนี้: if string.find(word): print 'success' ขอบคุณสำหรับความช่วยเหลือ
177 python  string 


7
เรียกใช้รหัสเมื่อ Django เริ่มครั้งเดียวเท่านั้น?
ฉันกำลังเขียนคลาส Django Middleware ที่ฉันต้องการเรียกใช้งานเพียงครั้งเดียวเมื่อเริ่มต้นเพื่อเริ่มต้นโค้ดอาร์บิทอลอื่น ๆ ผมได้ทำตามวิธีการแก้ปัญหาที่ดีมากโพสต์โดย sdolan ที่นี่แต่ "ฮัลโหล" ข้อความคือการส่งออกไปยังสถานีละสองครั้ง เช่น from django.core.exceptions import MiddlewareNotUsed from django.conf import settings class StartupMiddleware(object): def __init__(self): print "Hello world" raise MiddlewareNotUsed('Startup complete') และในไฟล์การตั้งค่า Django ของฉันฉันมีชั้นเรียนรวมอยู่ในMIDDLEWARE_CLASSESรายการ แต่เมื่อฉันรัน Django โดยใช้ runserver และขอหน้าฉันจะไปที่ terminal Django version 1.3, using settings 'config.server' Development server is running at http://127.0.0.1:8000/ …
177 python  django 

9
pandas DataFrame: แทนที่ค่าน่านด้วยค่าเฉลี่ยของคอลัมน์
ฉันได้รับ DataFrame แพนด้าส่วนใหญ่เต็มไปด้วยตัวเลขจริง แต่ก็มีnanค่าน้อยเช่นกัน ฉันจะแทนที่nans ด้วยค่าเฉลี่ยของคอลัมน์ที่พวกเขาอยู่ได้อย่างไร คำถามนี้คล้ายกับคำถามนี้: numpy array: แทนที่ค่า nan ด้วยค่าเฉลี่ยของคอลัมน์ แต่น่าเสียดายที่วิธีแก้ปัญหาที่ระบุนั้นใช้ไม่ได้กับ DataFrame แพนด้า
177 python  pandas  nan 

4
ตัวแปร __file__ หมายความว่า / ทำอะไร
A = os.path.join(os.path.dirname(__file__), '..') B = os.path.dirname(os.path.realpath(__file__)) C = os.path.abspath(os.path.dirname(__file__)) ฉันมักจะ hardwire เหล่านี้กับเส้นทางที่เกิดขึ้นจริง แต่มีเหตุผลสำหรับคำสั่งเหล่านี้ที่กำหนดเส้นทางที่รันไทม์และฉันอยากจะเข้าใจโมดูล os.path เพื่อให้ฉันสามารถเริ่มใช้มัน
177 python 

13
การแปลง int เป็นไบต์ใน Python 3
ฉันพยายามสร้างวัตถุไบต์นี้ใน Python 3: b'3\r\n' ดังนั้นฉันพยายามชัดเจน (สำหรับฉัน) และพบพฤติกรรมแปลก: >>> bytes(3) + b'\r\n' b'\x00\x00\x00\r\n' เห็นได้ชัดว่า: >>> bytes(10) b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' ฉันไม่เห็นพอยน์เตอร์ใด ๆ ว่าทำไมการแปลงไบต์จึงใช้วิธีนี้ในการอ่านเอกสาร อย่างไรก็ตามฉันพบข้อความแปลกใจบางอย่างในเรื่อง Python เกี่ยวกับการเพิ่มformatลงในไบต์ (ดูรูปแบบ Python 3 ไบต์ ): http://bugs.python.org/issue3982 สิ่งนี้โต้ตอบได้ไม่ดียิ่งขึ้นกับสิ่งแปลกประหลาดเช่นไบต์ (int) ที่คืนค่าศูนย์ในขณะนี้ และ: มันจะสะดวกกว่าสำหรับฉันถ้า bytes (int) คืนค่า ASCIIfication ของ int นั้น แต่โดยสุจริตแม้ข้อผิดพลาดจะดีกว่าพฤติกรรมนี้ (ถ้าฉันต้องการพฤติกรรมนี้ - ซึ่งฉันไม่เคยมี - ฉันอยากให้มันเป็นวิธีการในชั้นเรียนที่เรียกเช่น "bytes.zeroes (n)") บางคนสามารถอธิบายได้ว่าพฤติกรรมนี้มาจากไหน
177 python  python-3.x 

1
วิธีระบุชนิดส่งคืน“ nullable” พร้อมคำแนะนำประเภท
สมมติว่าฉันมีฟังก์ชั่น: def get_some_date(some_argument: int=None) -> %datetime_or_None%: if some_argument is not None and some_argument == 1: return datetime.utcnow() else: return None ฉันจะระบุประเภทส่งคืนสำหรับสิ่งที่สามารถเป็นได้Noneอย่างไร

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