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

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

11
เข้าสู่ฐาน 2 ใน python
ฉันจะคำนวณบันทึกไปยังฐานสองใน python ได้อย่างไร เช่น. ฉันมีสมการนี้โดยที่ฉันใช้ฐานบันทึก 2 import math e = -(t/T)* math.log((t/T)[, 2])
110 python  logarithm 


11
ทำความเข้าใจกับโอเปอเรเตอร์“ is” ของ Python
ตัวisดำเนินการไม่ตรงกับค่าของตัวแปร แต่อินสแตนซ์เอง แท้จริงแล้วหมายความว่าอย่างไร? ฉันประกาศตัวแปรสองตัวที่ตั้งชื่อxและyกำหนดค่าเดียวกันในทั้งสองตัวแปร แต่มันกลับเป็นเท็จเมื่อฉันใช้ตัวisดำเนินการ ฉันต้องการคำชี้แจง นี่คือรหัสของฉัน x = [1, 2, 3] y = [1, 2, 3] print(x is y) # It prints false!
110 python  operators 

12
วิธีลบคำหยุดโดยใช้ nltk หรือ python
ดังนั้นฉันจึงมีชุดข้อมูลที่ฉันต้องการลบคำหยุดไม่ให้ใช้ stopwords.words('english') ฉันกำลังดิ้นรนที่จะใช้สิ่งนี้ภายในรหัสของฉันเพื่อเพียงแค่เอาคำเหล่านี้ ฉันมีรายการคำจากชุดข้อมูลนี้อยู่แล้วส่วนที่ฉันกำลังดิ้นรนคือการเปรียบเทียบกับรายการนี้และลบคำหยุด ขอความช่วยเหลือใด ๆ
110 python  nltk  stop-words 

3
การพล็อตรายการพิกัด (x, y) ใน python matplotlib
ฉันมีรายชื่อคู่(a, b)ที่ฉันต้องการพล็อตด้วยmatplotlibpython เป็นพิกัด xy จริง ขณะนี้กำลังสร้างสองพล็อตโดยที่ดัชนีของรายการให้พิกัด x และค่า y ของพล็อตแรกคือas ในคู่และค่า y ของพล็อตที่สองคือbs ในคู่ เพื่อชี้แจงข้อมูลของฉันมีลักษณะดังนี้: li = [(a,b), (c,d), ... , (t, u)] ฉันต้องการทำซับเดียวที่เรียกplt.plot()ไม่ถูกต้อง หากฉันไม่ต้องการซับเดียวฉันสามารถทำได้เล็กน้อย: xs = [x[0] for x in li] ys = [x[1] for x in li] plt.plot(xs, ys) ฉันจะให้ matplotlib พล็อตคู่เหล่านี้เป็นพิกัด xy ได้อย่างไร

22
ฉันจะเปิดใช้งาน Virtualenv ภายในเทอร์มินัลของ PyCharm ได้อย่างไร
ฉันได้ตั้งค่า PyCharm สร้าง Virtualenv ของฉัน (ไม่ว่าจะผ่านคำสั่ง virtual env หรือโดยตรงใน PyCharm) และเปิดใช้งานสภาพแวดล้อมนั้นเป็น Interpreter ของฉัน ทุกอย่างทำงานได้ดี อย่างไรก็ตามถ้าฉันเปิดเทอร์มินัลโดยใช้ "Tools, Open Terminal" แสดงว่าเชลล์พร้อมต์ที่ให้มานั้นไม่ได้ใช้ virtual env ฉันยังคงต้องใช้source ~/envs/someenv/bin/activateภายใน Terminal นั้นเพื่อเปิดใช้งาน อีกวิธีหนึ่งคือการเปิดใช้งานสภาพแวดล้อมในเชลล์และเรียกใช้ PyCharm จากสภาพแวดล้อมนั้น สิ่งนี้ "ใช้งานได้" แต่ค่อนข้างน่าเกลียดและหมายความว่าฉันมีปัญหาใหญ่หากฉันเปลี่ยนสภาพแวดล้อมหรือโปรเจ็กต์จาก PyCharm: ตอนนี้ฉันใช้สภาพแวดล้อมที่ไม่ถูกต้องทั้งหมด มีวิธีอื่นที่ง่ายกว่ามากในการให้ "Tools, Open Terminal" เปิดใช้งานสภาพแวดล้อมเสมือนโดยอัตโนมัติหรือไม่

4
ข้อความ“ วิธีการสาธารณะน้อยเกินไป” ของไพลินท์หมายความว่าอย่างไร
ฉันใช้ไพลินต์กับโค้ดบางโค้ดและได้รับข้อผิดพลาด "มีวิธีการสาธารณะน้อยเกินไป (0/2)" ข้อความนี้หมายความว่าอย่างไร เอกสาร pylintจะไม่เป็นประโยชน์: ใช้เมื่อชั้นเรียนมีวิธีการสาธารณะน้อยเกินไปดังนั้นอย่าลืมว่ามันคุ้มค่าจริงๆ
110 python  pylint 

3
วิธีการลงจุดหลายฟังก์ชันในรูปเดียวกันใน Matplotlib
ฉันจะพล็อตต่อไปนี้ 3 ฟังก์ชั่น (เช่นsin, cosและนอกจากนี้) บนโดเมนtในร่างเดียวกันได้หรือไม่ from numpy import * import math import matplotlib.pyplot as plt t = linspace(0, 2*math.pi, 400) a = sin(t) b = cos(t) c = a + b

22
สตริง Python ไม่เปลี่ยนรูปหรือไม่? แล้วทำไม a +“” + b ถึงใช้งานได้?
ความเข้าใจของฉันคือสตริง Python ไม่เปลี่ยนรูป ฉันลองใช้รหัสต่อไปนี้: a = "Dog" b = "eats" c = "treats" print a, b, c # Dog eats treats print a + " " + b + " " + c # Dog eats treats print a # Dog a = a + " " + b + …

5
การตัดสินใจระหว่างกระบวนการย่อยการประมวลผลหลายกระบวนการและเธรดใน Python?
ฉันต้องการขนานโปรแกรม Python ของฉันเพื่อให้สามารถใช้โปรเซสเซอร์หลายตัวบนเครื่องที่ทำงานได้ การทำให้ขนานของฉันง่ายมากโดยที่ "เธรด" แบบขนานทั้งหมดของโปรแกรมจะเป็นอิสระและเขียนเอาต์พุตไปยังไฟล์แยกต่างหาก ฉันไม่ต้องการเธรดเพื่อแลกเปลี่ยนข้อมูล แต่มีความจำเป็นที่ฉันต้องรู้ว่าเมื่อเธรดเสร็จสิ้นเนื่องจากขั้นตอนบางอย่างของไปป์ไลน์ของฉันขึ้นอยู่กับเอาต์พุต การพกพาเป็นสิ่งสำคัญเพราะฉันต้องการให้สิ่งนี้ทำงานบน Python เวอร์ชันใดก็ได้บน Mac, Linux และ Windows ด้วยข้อ จำกัด เหล่านี้โมดูล Python ใดที่เหมาะสมที่สุดสำหรับการใช้งานสิ่งนี้ ฉันกำลังพยายามตัดสินใจระหว่างเธรดกระบวนการย่อยและการประมวลผลหลายขั้นตอนซึ่งดูเหมือนจะมีฟังก์ชันที่เกี่ยวข้อง มีความคิดเห็นเกี่ยวกับเรื่องนี้ไหม ฉันต้องการโซลูชันที่ง่ายที่สุดที่พกพาได้

11
จะรับทุกอย่างหลังจากสแลชสุดท้ายใน URL ได้อย่างไร
ฉันจะแยกสิ่งที่ตามหลังเครื่องหมายทับสุดท้ายใน URL ใน Python ได้อย่างไร ตัวอย่างเช่น URL เหล่านี้ควรส่งคืนสิ่งต่อไปนี้: URL: http://www.test.com/TEST1 returns: TEST1 URL: http://www.test.com/page/TEST2 returns: TEST2 URL: http://www.test.com/page/page/12345 returns: 12345 ฉันได้ลอง urlparse แล้ว แต่นั่นทำให้ฉันมีชื่อไฟล์พา ธ แบบเต็มเช่นpage/page/12345.
110 python  parsing  url 

14
ฟังก์ชันผกผันการคูณแบบโมดูลาร์ใน Python
โมดูล Python มาตรฐานบางตัวมีฟังก์ชันในการคำนวณค่าผกผันการคูณแบบโมดูลาร์หรือไม่y = invmod(x, p)เช่นจำนวนนั้นx*y == 1 (mod p)หรือไม่ Google ดูเหมือนจะไม่ได้ให้คำแนะนำที่ดีเกี่ยวกับเรื่องนี้ แน่นอนว่าเราสามารถสร้างอัลกอริธึมแบบยุคลิดแบบขยายที่ผลิตเองในบ้านได้ 10 สายแต่ทำไมต้องสร้างวงล้อขึ้นมาใหม่ ตัวอย่างเช่น Java BigIntegerมีmodInverseวิธีการ Python ไม่มีอะไรที่คล้ายกัน?
110 python  algorithm 

4
วิธีคำนวณความแม่นยำการเรียกคืนความแม่นยำและคะแนน f1 สำหรับกรณีหลายคลาสด้วย scikit Learn
ฉันกำลังทำงานในปัญหาการวิเคราะห์ความรู้สึกข้อมูลมีลักษณะดังนี้: label instances 5 1190 4 838 3 239 1 204 2 127 ดังนั้นข้อมูลของฉันจะไม่สมดุลตั้งแต่ 1190 ที่ถูกกำกับด้วยinstances 5สำหรับการจัดประเภทฉันใช้SVCของ scikit SVCปัญหาคือฉันไม่รู้ว่าจะปรับสมดุลข้อมูลของฉันอย่างไรให้ถูกต้องเพื่อคำนวณความแม่นยำการเรียกคืนความแม่นยำและคะแนน f1 สำหรับกรณีมัลติคลาสอย่างถูกต้อง ดังนั้นฉันจึงลองใช้วิธีต่อไปนี้: อันดับแรก: wclf = SVC(kernel='linear', C= 1, class_weight={1: 10}) wclf.fit(X, y) weighted_prediction = wclf.predict(X_test) print 'Accuracy:', accuracy_score(y_test, weighted_prediction) print 'F1 score:', f1_score(y_test, weighted_prediction,average='weighted') print 'Recall:', recall_score(y_test, weighted_prediction, average='weighted') print …

10
บิวท์อินบางตัวเพื่อวางรายการใน python
ฉันมีรายการขนาด < Nและฉันต้องการเพิ่มขนาดเป็นขนาด N ด้วยค่า แน่นอนฉันสามารถใช้สิ่งต่อไปนี้ได้ แต่ฉันรู้สึกว่ามีบางอย่างที่ฉันพลาดไป: >>> N = 5 >>> a = [1] >>> map(lambda x, y: y if x is None else x, a, ['']*N) [1, '', '', '', '']

11
ชื่องูหลาม
ในภาษาอื่น ๆ แนวทางทั่วไปที่ช่วยในการสร้างโค้ดที่ดีขึ้นคือทำให้ทุกอย่างถูกซ่อนไว้ให้มากที่สุด หากมีข้อสงสัยว่าตัวแปรควรเป็นแบบส่วนตัวหรือได้รับการปกป้องควรเลือกใช้แบบส่วนตัว สิ่งเดียวกันนี้ถือเป็นจริงสำหรับ Python หรือไม่? ในตอนแรกฉันควรใช้เครื่องหมายขีดล่างสองอันกับทุกอย่างในตอนแรกและทำให้ซ่อนน้อยลง (ขีดล่างเดียวเท่านั้น) ตามที่ฉันต้องการ ถ้าการประชุมต้องใช้ขีดล่างเพียงอันเดียวฉันก็อยากทราบเหตุผลเช่นกัน นี่เป็นความคิดเห็นของผมที่เหลืออยู่บนคำตอบ JBernardo ของ อธิบายว่าทำไมฉันถึงถามคำถามนี้และทำไมฉันถึงอยากรู้ว่าทำไม Python ถึงแตกต่างจากภาษาอื่น: ฉันมาจากภาษาที่ฝึกให้คุณคิดว่าทุกอย่างควรเป็นแบบสาธารณะเท่าที่จำเป็นเท่านั้นและไม่มีอีกแล้ว เหตุผลก็คือสิ่งนี้จะลดการอ้างอิงและทำให้รหัสปลอดภัยในการแก้ไขมากขึ้น วิธีที่ Python ทำในสิ่งที่ตรงกันข้าม - เริ่มจากที่สาธารณะและไปที่ซ่อน - เป็นเรื่องแปลกสำหรับฉัน

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