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

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

8
ทำซ้ำมากกว่าคุณลักษณะของวัตถุในหลาม
ฉันมีวัตถุหลามที่มีคุณลักษณะและวิธีการหลายอย่าง ฉันต้องการวนซ้ำคุณลักษณะของวัตถุ class my_python_obj(object): attr1='a' attr2='b' attr3='c' def method1(self, etc, etc): #Statements ฉันต้องการสร้างพจนานุกรมที่มีคุณลักษณะของวัตถุทั้งหมดและค่าปัจจุบันของพวกเขา แต่ฉันต้องการที่จะทำมันในแบบไดนามิก (ดังนั้นถ้าภายหลังฉันเพิ่มคุณสมบัติอื่นที่ฉันไม่ต้องจำเพื่อปรับปรุงฟังก์ชั่นของฉันด้วย) ในตัวแปร php สามารถใช้เป็นกุญแจได้ แต่วัตถุในไพ ธ อนนั้นไม่สามารถอธิบายได้และถ้าฉันใช้เครื่องหมายจุดสำหรับสิ่งนี้มันจะสร้างแอททริบิวใหม่ที่มีชื่อ var ของฉันซึ่งไม่ใช่เจตนาของฉัน เพียงเพื่อทำให้สิ่งต่าง ๆ ชัดเจนขึ้น: def to_dict(self): '''this is what I already have''' d={} d["attr1"]= self.attr1 d["attr2"]= self.attr2 d["attr3"]= self.attr3 return d · def to_dict(self): '''this is what I …


8
ฉันจะจับเวลาส่วนรหัสสำหรับการทดสอบประสิทธิภาพด้วย Pythons timeit ได้อย่างไร
ฉันเป็นสคริปต์ไพ ธ อนซึ่งทำงานได้ตามปกติ แต่ฉันต้องเขียนเวลาดำเนินการ ฉัน googled ที่ฉันควรใช้timeitแต่ฉันไม่สามารถใช้งานได้ สคริปต์ Python ของฉันมีลักษณะดังนี้: import sys import getopt import timeit import random import os import re import ibm_db import time from string import maketrans myfile = open("results_update.txt", "a") for r in range(100): rannumber = random.randint(0, 100) update = "update TABLE set val = %i …


3
'# noqa' หมายถึงอะไรในความคิดเห็นของ Python
# noqaขณะที่การค้นหาผ่านโครงการหลามผมพบว่าไม่กี่บรรทัดแสดงความคิดเห็นด้วย import sys sys.path.append(r'C:\dev') import some_module # noqa อะไรnoqaหมายถึงในงูใหญ่? มันเฉพาะเจาะจงกับงูหลามเท่านั้น?

12
python python: ลบรายการที่ซ้ำกันโดยคอลัมน์ A, ทำให้แถวมีค่าสูงสุดในคอลัมน์ B
ฉันมี dataframe ที่มีค่าซ้ำในคอลัมน์ A ฉันต้องการปล่อยรายการที่ซ้ำกันรักษาแถวด้วยค่าสูงสุดในคอลัมน์ B ดังนั้นนี่คือ: A B 1 10 1 20 2 30 2 40 3 10 ควรเปลี่ยนเป็น: A B 1 20 2 40 3 10 เวสสตรีทได้เพิ่มบางฟังก์ชันการทำงานที่ดีที่จะซ้ำกันวาง: http://wesmckinney.com/blog/?p=340 แต่ AFAICT มันถูกออกแบบมาสำหรับการทำซ้ำที่แน่นอนดังนั้นจึงไม่มีการกล่าวถึงเกณฑ์สำหรับการเลือกแถวที่จะเก็บไว้ ฉันเดาว่าอาจเป็นวิธีที่ง่ายในการทำ --- อาจจะง่ายเหมือนกับการคัดแยกดาต้าเฟรมก่อนที่จะทิ้งข้อมูลที่ซ้ำกัน --- แต่ฉันไม่รู้ว่าตรรกะภายในของกรุ๊ปบายเพียงพอที่จะเข้าใจได้ ข้อเสนอแนะใด ๆ

6
การเข้ารหัสไฟล์ภาพด้วย base64
ฉันต้องการเข้ารหัสภาพเป็นสตริงโดยใช้โมดูล base64 ฉันเจอปัญหาแล้ว ฉันจะระบุรูปภาพที่ต้องการเข้ารหัสได้อย่างไร ฉันลองใช้ไดเรกทอรีไปยังรูปภาพ แต่เพียงนำไปสู่ไดเรกทอรีที่ถูกเข้ารหัส ฉันต้องการเข้ารหัสไฟล์ภาพจริง แก้ไข ฉันลองตัวอย่างนี้: with open("C:\Python26\seriph1.BMP", "rb") as f: data12 = f.read() UU = data12.encode("base64") UUU = base64.b64decode(UU) print UUU self.image = ImageTk.PhotoImage(Image.open(UUU)) แต่ฉันได้รับข้อผิดพลาดต่อไปนี้: Traceback (most recent call last): File "<string>", line 245, in run_nodebug File "C:\Python26\GUI1.2.9.py", line 473, in <module> app = simpleapp_tk(None) File …
161 python  base64 

15
เลือก Java vs Python บน Google App Engine
ปัจจุบัน Google App Engine รองรับทั้ง Python และ Java การสนับสนุน Java นั้นไม่เป็นผู้ใหญ่ อย่างไรก็ตามดูเหมือนว่า Java จะมีรายการของไลบรารีที่ยาวขึ้นและสนับสนุนเป็นพิเศษสำหรับ Java bytecode โดยไม่คำนึงถึงภาษาที่ใช้ในการเขียนโค้ดนั้น ภาษาใดจะให้ประสิทธิภาพที่ดีขึ้นและมีพลังมากขึ้น? กรุณาแนะนำ ขอบคุณ! แก้ไข: http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine?pli=1 แก้ไข: โดย "อำนาจ" ฉันหมายถึงการขยายตัวที่ดีขึ้นและการรวมห้องสมุดที่มีอยู่นอกกรอบ Python อนุญาตเฉพาะ Python library เท่านั้น

3
Django ฟิลด์โมเดลแบบไดนามิก
ผมทำงานในหลายอาศัยแอพลิเคชันที่ผู้ใช้บางคนสามารถกำหนดเขตข้อมูลของตัวเอง (ผ่านผู้ดูแลระบบ) เพื่อรวบรวมข้อมูลเพิ่มเติมในรูปแบบและรายงานเกี่ยวกับข้อมูล บิตหลังทำให้ JSONField ไม่ใช่ตัวเลือกที่ยอดเยี่ยมดังนั้นฉันจึงมีวิธีแก้ไขปัญหาต่อไปนี้: class CustomDataField(models.Model): """ Abstract specification for arbitrary data fields. Not used for holding data itself, but metadata about the fields. """ site = models.ForeignKey(Site, default=settings.SITE_ID) name = models.CharField(max_length=64) class Meta: abstract = True class CustomDataValue(models.Model): """ Abstract specification for arbitrary data. """ value = …

7
พารามิเตอร์ URL ทางเลือก Django
ฉันมี Django URL เช่นนี้: url( r'^project_config/(?P<product>\w+)/(?P<project_id>\w+)/$', 'tool.views.ProjectConfig', name='project_config' ), views.py: def ProjectConfig(request, product, project_id=None, template_name='project.html'): ... # do stuff ปัญหาคือฉันต้องการให้project_idพารามิเตอร์เป็นตัวเลือก ฉันต้องการ/project_config/และ/project_config/12345abdce/เป็นรูปแบบ URL ที่ถูกต้องเท่าเทียมกันดังนั้นหาก project_idผ่านไปแล้วฉันสามารถใช้ได้ ในขณะนี้ฉันได้รับ 404 เมื่อฉันเข้าถึง URL โดยไม่มีproject_idพารามิเตอร์

9
Python: json.loads คืนค่ารายการที่ขึ้นต้นด้วย 'u'
ฉันจะได้รับรูปแบบสตริงที่เข้ารหัส JSON Obj-C และฉันกำลังถอดรหัสสตริงดัมมี่ (ตอนนี้) เช่นรหัสด้านล่าง ผลลัพธ์ของฉันออกมาพร้อมกับอักขระ 'u' นำหน้าแต่ละรายการ: [{u'i': u'imap.gmail.com', u'p': u'aaaa'}, {u'i': u'333imap.com', u'p': u'bbbb'}... JSON จะเพิ่มตัวอักษร unicode นี้ได้อย่างไร? วิธีลบที่ดีที่สุดคืออะไร mail_accounts = [] da = {} try: s = '[{"i":"imap.gmail.com","p":"aaaa"},{"i":"imap.aol.com","p":"bbbb"},{"i":"333imap.com","p":"ccccc"},{"i":"444ap.gmail.com","p":"ddddd"},{"i":"555imap.gmail.com","p":"eee"}]' jdata = json.loads(s) for d in jdata: for key, value in d.iteritems(): if key not in da: da[key] …
161 python  json 

8
วิธี pythonic ในการทำบางสิ่งบางอย่าง N ครั้งโดยไม่มีตัวแปรดัชนี?
ทุกวันฉันรักหลามมากขึ้นเรื่อย ๆ วันนี้ฉันกำลังเขียนโค้ดบางอย่างเช่น: for i in xrange(N): do_something() ฉันต้องทำอะไรซักอย่าง N ครั้ง แต่ในแต่ละครั้งไม่ได้ขึ้นอยู่กับค่าของi(ตัวแปรดัชนี) ฉันรู้ว่าฉันกำลังสร้างตัวแปรที่ฉันไม่เคยใช้ ( i) และฉันคิดว่า "แน่นอนว่ามันเป็นวิธีการทำสิ่งที่ยิ่งใหญ่กว่านี้โดยไม่จำเป็นต้องใช้ตัวแปรดัชนีที่ไร้ประโยชน์" ดังนั้น ... คำถามคือ: คุณรู้วิธีการทำงานที่เรียบง่ายในวิธีที่สวยงามยิ่งขึ้น (pythonic) หรือไม่?


3
ข้อความ PyLint: การบันทึกการจัดรูปแบบการแก้ไข
สำหรับรหัสต่อไปนี้: logger.debug('message: {}'.format('test')) pylint สร้างคำเตือนต่อไปนี้: การบันทึก - รูปแบบ - การแก้ไข (W1202): ใช้การจัดรูปแบบ% ในฟังก์ชั่นการบันทึกและส่งผ่านพารามิเตอร์% เป็นอาร์กิวเมนต์ที่ใช้เมื่อคำสั่งการบันทึกมีรูปแบบการโทรเป็น "การบันทึก (format_string.format (format_args ... ))" การเรียกดังกล่าวควรใช้การจัดรูปแบบ% แทน แต่ปล่อยให้การแก้ไขไปยังฟังก์ชันการบันทึกโดยส่งพารามิเตอร์เป็นอาร์กิวเมนต์ ฉันรู้ว่าฉันสามารถปิดคำเตือนนี้ได้ แต่ฉันต้องการที่จะเข้าใจ ฉันถือว่าการใช้format()เป็นวิธีที่เหมาะสมในการพิมพ์คำสั่งใน Python 3 ทำไมจึงไม่เป็นความจริงสำหรับคำสั่ง logger?

5
Python กำหนดว่าจะสร้างคีย์หรือผนวกองค์ประกอบกับคีย์ได้อย่างไร
ฉันมีพจนานุกรมที่ว่างเปล่า ชื่อ: dict_x มันคือการมีกุญแจที่มีค่าเป็นรายการ จากการวนซ้ำแยกกันฉันได้รับคีย์ (เช่น:) key_123และไอเท็ม (tuple) เพื่อวางในรายการdict_xค่าkey_123ของ หากคีย์นี้มีอยู่แล้วฉันต้องการผนวกรายการนี้ หากคีย์นี้ไม่มีอยู่ฉันต้องการสร้างด้วยรายการเปล่าแล้วต่อท้ายหรือต่อเติมหรือสร้างด้วย tuple ในนั้น ในอนาคตเมื่อคีย์นี้ปรากฏขึ้นอีกครั้งเนื่องจากมีอยู่ฉันต้องการให้ผนวกค่าอีกครั้ง รหัสของฉันประกอบด้วย: รับคีย์และค่า ดูว่าไม่dict_xสำคัญที่มีอยู่ใน และถ้าไม่สร้างมัน: dict_x[key] == [] หลังจากนั้น: dict_x[key].append(value) นี่เป็นวิธีที่จะทำหรือไม่ ฉันจะลองใช้try/exceptบล็อคได้หรือไม่

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