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

พจนานุกรมจับคู่คีย์กับค่าที่ช่วยให้สามารถเรียกคืนค่าจากคีย์ได้อย่างมีประสิทธิภาพ ใช้งานแท็ก [ฟังก์ชั่นแผนที่] เกี่ยวกับฟังก์ชั่นการทำแผนที่ข้อมูล, โปรด; และสำหรับภูมิศาสตร์ [แผนที่]

3
จะตรวจสอบว่าตัวแปรเป็นพจนานุกรมใน Python ได้อย่างไร?
คุณจะตรวจสอบว่าตัวแปรเป็นพจนานุกรมในไพ ธ อนได้อย่างไร? ตัวอย่างเช่นฉันต้องการให้วนลูปผ่านค่าในพจนานุกรมจนกว่าจะพบพจนานุกรม จากนั้นวนซ้ำที่พบ: dict = {'abc': 'abc', 'def': {'ghi': 'ghi', 'jkl': 'jkl'}} for k, v in dict.iteritems(): if ###check if v is a dictionary: for k, v in v.iteritems(): print(k, ' ', v) else: print(k, ' ', v)
214 python  dictionary 

8
พจนานุกรมและค่าเริ่มต้น
สมมติว่าconnectionDetailsเป็นพจนานุกรม Python สิ่งที่ดีที่สุดสง่างามที่สุด "ไพ ธ อน" ที่สุดของวิธีการสร้างรหัสใหม่เช่นนี้? if "host" in connectionDetails: host = connectionDetails["host"] else: host = someDefaultValue

20
วิธีพิมพ์คีย์ของพจนานุกรม
ฉันต้องการพิมพ์คีย์พจนานุกรม Python: mydic = {} mydic['key_name'] = 'value_name' ตอนนี้ผมสามารถตรวจสอบว่าแต่สิ่งที่ฉันต้องการจะทำคือการพิมพ์ชื่อของคีย์mydic.has_key('key_name') 'key_name'แน่นอนว่าฉันสามารถใช้งานmydic.items()ได้ แต่ฉันไม่ต้องการให้คีย์ทั้งหมดอยู่ในรายการเพียงคีย์เดียวเท่านั้น เช่นฉันคาดหวังบางอย่างเช่นนี้ (ในรหัสหลอก): print "the key name is", mydic['key_name'].name_the_key(), "and its value is", mydic['key_name'] มีname_the_key()วิธีการพิมพ์ชื่อคีย์หรือไม่? แก้ไข: โอเคขอบคุณมากสำหรับปฏิกิริยาของคุณ! :) ฉันรู้ว่าคำถามของฉันไม่ได้มีการกำหนดและไม่สำคัญ ฉันเพิ่งสับสนเพราะฉันรู้ว่า key_name และmydic['key_name']เป็นสองสิ่งที่แตกต่างกันและฉันคิดว่ามันจะไม่ถูกต้องที่จะพิมพ์key_nameออกจากบริบทพจนานุกรม แต่แน่นอนฉันสามารถใช้ 'key_name' เพื่ออ้างถึงกุญแจ! :)
213 python  dictionary  key 

7
ไวยากรณ์ที่ต้องการสำหรับเริ่มต้น dict คืออะไร: brace literals {} หรือฟังก์ชัน dict ()
ฉันใช้ความพยายามในการเรียนรู้ Python และฉันให้ความสำคัญกับมาตรฐานการเข้ารหัสทั่วไป นี่อาจดูเหมือนคำถามที่ไม่มีจู้จี้จุกจิก แต่ฉันพยายามที่จะมุ่งเน้นไปที่แนวทางปฏิบัติที่ดีที่สุดในขณะที่ฉันเรียนรู้ดังนั้นฉันจึงไม่ต้องแก้นิสัย 'เลว' ใด ๆ ฉันเห็นสองวิธีทั่วไปในการเริ่มต้น dict: a = { 'a': 'value', 'another': 'value', } b = dict( a='value', another='value', ) สิ่งใดที่ถือว่าเป็น "pythonic เพิ่มเติม"? คุณใช้อันไหน ทำไม?
212 python  dictionary 

7
วิธีกรองพจนานุกรมตามฟังก์ชั่นเงื่อนไขตามอำเภอใจ?
ฉันมีพจนานุกรมของจุดพูดว่า: >>> points={'a':(3,4), 'b':(1,2), 'c':(5,5), 'd':(3,3)} ฉันต้องการสร้างพจนานุกรมใหม่ด้วยคะแนนทั้งหมดที่ค่า x และ y น้อยกว่า 5 นั่นคือคะแนน 'a', 'b' และ 'd' ตามพจนานุกรมหนังสือแต่ละเล่มมีitems()ฟังก์ชั่นซึ่งจะคืนค่ารายการของ(key, pair) tuple: >>> points.items() [('a', (3, 4)), ('c', (5, 5)), ('b', (1, 2)), ('d', (3, 3))] ดังนั้นฉันจึงเขียนสิ่งนี้: >>> for item in [i for i in points.items() if i[1][0]<5 and i[1][1]<5]: ... points_small[item[0]]=item[1] …

10
ใน Python ฉันจะวนซ้ำพจนานุกรมในการเรียงลำดับคีย์ได้อย่างไร
มีฟังก์ชันที่มีอยู่ซึ่งลงท้ายด้วยต่อไปนี้โดยที่dเป็นพจนานุกรม: return d.iteritems() ที่ส่งคืนตัววนซ้ำที่ไม่เรียงลำดับสำหรับพจนานุกรมที่กำหนด ผมอยากจะกลับ iterator ที่ต้องผ่านรายการที่เรียงโดยคีย์ ฉันจะทำอย่างไร

5
แทรก vs emplace เทียบกับตัวดำเนินการ [] ในแผนที่ c ++
ฉันใช้แผนที่เป็นครั้งแรกและฉันตระหนักว่ามีหลายวิธีในการแทรกองค์ประกอบ คุณสามารถใช้emplace(), operator[]หรือinsert()บวกสายพันธุ์เช่นการใช้หรือvalue_type make_pairแม้ว่าจะมีข้อมูลมากมายเกี่ยวกับพวกเขาทั้งหมดและคำถามเกี่ยวกับบางกรณี แต่ฉันก็ยังไม่เข้าใจภาพรวม ดังนั้นสองคำถามของฉันคือ: อะไรคือข้อได้เปรียบของแต่ละคนที่มีมากกว่าคนอื่น ๆ ? จำเป็นต้องเพิ่ม emplace ลงในมาตรฐานหรือไม่? มีอะไรที่เป็นไปไม่ได้มาก่อนโดยไม่ได้?

10
มีความแตกต่างระหว่างการใช้ตัวอักษร dict และตัวสร้าง dict ไหม?
เมื่อใช้ PyCharm ฉันสังเกตว่ามันเสนอให้แปลงตัวอักษรตามคำบอก : d = { 'one': '1', 'two': '2', } เป็นตัวสร้าง dict : d = dict(one='1', two='2') วิธีการที่แตกต่างกันเหล่านี้แตกต่างกันไปในวิธีที่สำคัญหรือไม่? (ในขณะที่เขียนคำถามนี้ฉันสังเกตเห็นว่าการใช้dict()ดูเหมือนว่าเป็นไปไม่ได้ที่จะระบุคีย์ตัวเลข .. d = {1: 'one', 2: 'two'}เป็นไปได้ แต่เห็นได้ชัดว่าdict(1='one' ...)ไม่ใช่สิ่งอื่นใด)

12
คุณจะหาคีย์แรกในพจนานุกรมได้อย่างไร
ฉันกำลังพยายามให้โปรแกรมของฉันพิมพ์ออกมา"banana"จากพจนานุกรม อะไรจะเป็นวิธีที่ง่ายที่สุดในการทำเช่นนี้? นี่คือพจนานุกรมของฉัน: prices = { "banana" : 4, "apple" : 2, "orange" : 1.5, "pear" : 3 }
203 python  dictionary 

20
วิธีที่ดีที่สุดในการใช้พจนานุกรมที่ซ้อนกันคืออะไร
ฉันมีโครงสร้างข้อมูลที่มีความสำคัญต่อพจนานุกรมซ้อนกัน สมมติว่ามันมีลักษณะเช่นนี้: {'new jersey': {'mercer county': {'plumbers': 3, 'programmers': 81}, 'middlesex county': {'programmers': 81, 'salesmen': 62}}, 'new york': {'queens county': {'plumbers': 9, 'salesmen': 36}}} ตอนนี้การบำรุงรักษาและการสร้างสิ่งนี้ค่อนข้างเจ็บปวด ทุกครั้งที่ฉันมีรัฐ / เคาน์ตี / อาชีพใหม่ฉันต้องสร้างพจนานุกรมเลเยอร์ที่ต่ำกว่าผ่านบล็อกลอง / จับที่น่ารังเกียจ ยิ่งกว่านั้นฉันต้องสร้างตัววนซ้ำที่น่ารำคาญถ้าฉันต้องการข้ามค่าทั้งหมด ฉันยังสามารถใช้สิ่งอันดับเป็นกุญแจได้เช่น: {('new jersey', 'mercer county', 'plumbers'): 3, ('new jersey', 'mercer county', 'programmers'): 81, ('new jersey', 'middlesex county', …

11
แผนที่และพจนานุกรมแตกต่างกันอย่างไร?
ฉันรู้ว่าแผนที่เป็นโครงสร้างข้อมูลที่จับคู่คีย์กับค่า พจนานุกรมไม่เหมือนกันหรือ แผนที่และพจนานุกรม1 ต่างกันอย่างไร 1. ฉันไม่ได้ถามว่าพวกเขากำหนดไว้ในภาษา X หรือ Y (ซึ่งดูเหมือนจะเป็นสิ่งที่คนทั่วไปถามที่นี่ดังนั้น) ฉันต้องการที่จะรู้ว่าความแตกต่างของพวกเขาในทางทฤษฎีคืออะไร

9
การจัดเก็บพจนานุกรม Python
ฉันคุ้นเคยกับการนำข้อมูลเข้าและออกจาก Python โดยใช้ไฟล์. csv แต่มีความท้าทายที่ชัดเจนในเรื่องนี้ คำแนะนำเกี่ยวกับวิธีการง่ายๆในการจัดเก็บพจนานุกรม (หรือชุดพจนานุกรม) ในไฟล์ json หรือ pck? ตัวอย่างเช่น: data = {} data ['key1'] = "keyinfo" data ['key2'] = "keyinfo2" ฉันต้องการทราบทั้งวิธีการบันทึกและวิธีโหลดกลับ
198 python  json  dictionary  save  pickle 

6
เหตุใด std :: map ถูกนำไปใช้เป็นต้นไม้สีแดงดำ
ทำไมถูกstd::mapนำไปใช้เป็นต้นไม้สีแดงดำ ? มีโครงสร้างการค้นหาแบบทวิภาคที่สมดุลหลายต้น (BST) อะไรคือข้อดีของการออกแบบต้นไม้สีแดง - ดำ

16
ใช้กรณีสำหรับวิธีการ 'setdefault' dict
นอกจากนี้collections.defaultdictในหลาม 2.5 ลดลงอย่างมากความจำเป็นในการdict's setdefaultวิธี คำถามนี้สำหรับการศึกษาโดยรวมของเรา: setdefaultยังมีประโยชน์อะไรในปัจจุบันใน Python 2.6 / 2.7? กรณีการใช้งานที่เป็นที่นิยมของอะไรsetdefaultถูกแทนที่ด้วยcollections.defaultdict?

8
ฉันได้รับข้อผิดพลาดที่สำคัญในหลาม
ในโปรแกรมไพ ธ อนของฉันฉันได้รับข้อผิดพลาดนี้: KeyError: 'variablename' จากรหัสนี้: path = meta_entry['path'].strip('/'), ใครช่วยอธิบายหน่อยได้ไหมว่าทำไมสิ่งนี้ถึงเกิดขึ้น
191 python  dictionary 

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