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

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

3
ความปลอดภัยของเธรดในพจนานุกรมของ Python
ฉันมีชั้นเรียนที่มีพจนานุกรม class OrderBook: orders = {'Restaurant1': None, 'Restaurant2': None, 'Restaurant3': None, 'Restaurant4': None} @staticmethod def addOrder(restaurant_name, orders): OrderBook.orders[restaurant_name] = orders และฉันทำงาน 4 กระทู้ (หนึ่งสำหรับแต่ละร้านอาหาร) OrderBook.addOrderที่เรียกวิธี นี่คือฟังก์ชั่นที่รันโดยแต่ละเธรด: def addOrders(restaurant_name): #creates orders ... OrderBook.addOrder(restaurant_name, orders) มีความปลอดภัยนี้หรือฉันจะต้องใช้ล็อคก่อนที่จะเรียกaddOrder?

14
วิธีการต่อคุณสมบัติจากวัตถุ JavaScript หลายตัว
ฉันกำลังมองหาวิธีที่ดีที่สุดในการ "เพิ่ม" ออบเจ็กต์ JavaScript หลายตัว (Associative Arrays) ตัวอย่างเช่นกำหนด: a = { "one" : 1, "two" : 2 }; b = { "three" : 3 }; c = { "four" : 4, "five" : 5 }; วิธีที่ดีที่สุดในการคำนวณคืออะไร: { "one" : 1, "two" : 2, "three" : 3, "four" : 4, "five" …

11
เหตุใดฉันจึงไม่สามารถใช้รายการเป็นคีย์ dict ใน python ได้
ฉันสับสนเล็กน้อยเกี่ยวกับสิ่งที่สามารถ / ไม่สามารถใช้เป็นคีย์สำหรับ python dict dicked = {} dicked[None] = 'foo' # None ok dicked[(1,3)] = 'baz' # tuple ok import sys dicked[sys] = 'bar' # wow, even a module is ok ! dicked[(1,[3])] = 'qux' # oops, not allowed ทูเปิลจึงเป็นประเภทที่ไม่เปลี่ยนรูป แต่ถ้าฉันซ่อนรายการไว้ข้างในมันก็จะไม่เป็นกุญแจ .. ฉันจะซ่อนรายการภายในโมดูลได้ไม่ยากหรือ? ฉันมีความคิดที่คลุมเครือว่ากุญแจนั้นจะต้อง "แฮชได้" แต่ฉันจะยอมรับความไม่รู้ของตัวเองเกี่ยวกับรายละเอียดทางเทคนิค ฉันไม่รู้ว่าเกิดอะไรขึ้นที่นี่ จะเกิดอะไรขึ้นถ้าคุณพยายามใช้รายการเป็นคีย์โดยมีแฮชเป็นพูดตำแหน่งหน่วยความจำของพวกเขา

2
ความแตกต่างระหว่างการกำหนดการพิมพ์ Dict และ Dict?
ฉันกำลังฝึกใช้คำแนะนำประเภทใน Python 3.5 เพื่อนร่วมงานคนหนึ่งของฉันใช้typing.Dict: import typing def change_bandwidths(new_bandwidths: typing.Dict, user_id: int, user_name: str) -> bool: print(new_bandwidths, user_id, user_name) return False def my_change_bandwidths(new_bandwidths: dict, user_id: int, user_name: str) ->bool: print(new_bandwidths, user_id, user_name) return True def main(): my_id, my_name = 23, "Tiras" simple_dict = {"Hello": "Moon"} change_bandwidths(simple_dict, my_id, my_name) new_dict = {"new": …

8
Python: Tuples / พจนานุกรมเป็นคีย์เลือกจัดเรียง
สมมติว่าฉันมีผลไม้หลายสีเช่นกล้วยสีฟ้า 24 ลูกแอปเปิ้ลเขียว 12 ลูกสตรอเบอร์รี่สีน้ำเงิน 0 ลูกเป็นต้น ฉันต้องการจัดระเบียบในโครงสร้างข้อมูลใน Python ที่ช่วยให้เลือกและจัดเรียงได้ง่าย ความคิดของฉันคือการใส่สิ่งเหล่านี้ลงในพจนานุกรมที่มีทูเปิลเป็นกุญแจสำคัญเช่น { ('banana', 'blue' ): 24, ('apple', 'green'): 12, ('strawberry','blue' ): 0, # ... } หรือแม้แต่พจนานุกรมเช่น { {'fruit': 'banana', 'color': 'blue' }: 24, {'fruit': 'apple', 'color': 'green'}: 12, {'fruit': 'strawberry','color': 'blue' }: 0, # ... } ฉันต้องการเรียกดูรายการผลไม้สีฟ้าทั้งหมดหรือกล้วยทุกสีหรือจัดเรียงพจนานุกรมตามชื่อผลไม้ มีวิธีทำอย่างไรให้สะอาด? อาจเป็นไปได้ว่าพจนานุกรมที่มีทูเปิลเป็นคีย์ไม่ใช่วิธีที่เหมาะสมในการจัดการกับสถานการณ์นี้ ข้อเสนอแนะทั้งหมดยินดีต้อนรับ!

9
ฉันควรใช้คลาสหรือพจนานุกรม?
ฉันมีคลาสที่มีเฉพาะฟิลด์และไม่มีเมธอดเช่นนี้: class Request(object): def __init__(self, environ): self.environ = environ self.request_method = environ.get('REQUEST_METHOD', None) self.url_scheme = environ.get('wsgi.url_scheme', None) self.request_uri = wsgiref.util.request_uri(environ) self.path = environ.get('PATH_INFO', None) # ... สิ่งนี้สามารถแปลเป็นคำสั่งได้อย่างง่ายดาย __slots__ชั้นมีความยืดหยุ่นมากขึ้นเพื่อให้การเพิ่มในอนาคตและอาจจะได้อย่างรวดเร็วด้วย ดังนั้นการใช้ dict แทนจะมีประโยชน์หรือไม่? คำสั่งจะเร็วกว่าคลาสหรือไม่? และเร็วกว่าคลาสที่มีสล็อต?
105 python  oop  class  dictionary 

6
SortedList <>, SortedDictionary <> และพจนานุกรม <>
ฉันพบSortedList&lt;TKey, TValue&gt; SortedDictionary&lt;TKey, TValue&gt;และDictionary&lt;TKey, TValue&gt;ใช้อินเทอร์เฟซเดียวกัน เมื่อไหร่ที่เราควรเลือกSortedListและทำSortedDictionaryซ้ำDictionary? อะไรคือความแตกต่างระหว่างSortedListและSortedDictionaryในแง่ของการใช้งาน?

5
HashSet <T> เทียบกับ Dictionary <K, V> wrt เวลาค้นหาเพื่อดูว่ามีรายการอยู่หรือไม่
HashSet&lt;T&gt; t = new HashSet&lt;T&gt;(); // add 10 million items Dictionary&lt;K, V&gt; t = new Dictionary&lt;K, V&gt;(); // add 10 million items. .Containsวิธีของใครจะกลับเร็วกว่ากัน? เพื่อชี้แจงความต้องการของฉันคือฉันมีวัตถุ 10 ล้านรายการ (สตริงจริงๆ) ที่ฉันต้องตรวจสอบว่ามีอยู่ในโครงสร้างข้อมูลหรือไม่ ฉันจะไม่ทำซ้ำ


7
ตั้งค่าคุณลักษณะจากพจนานุกรมใน python
เป็นไปได้ไหมที่จะสร้างวัตถุจากพจนานุกรมใน python ในลักษณะที่แต่ละคีย์เป็นแอตทริบิวต์ของวัตถุนั้น สิ่งนี้: d = { 'name': 'Oscar', 'lastName': 'Reyes', 'age':32 } e = Employee(d) print e.name # Oscar print e.age + 10 # 42 ฉันคิดว่ามันจะค่อนข้างตรงกันข้ามกับคำถามนี้: พจนานุกรม Python จากช่องของวัตถุ

17
ฉันจะแลกเปลี่ยนคีย์กับค่าในพจนานุกรมได้อย่างไร
ฉันได้รับพจนานุกรมเป็นอินพุตและต้องการส่งคืนพจนานุกรมซึ่งคีย์จะเป็นค่าของอินพุตและค่าของใครจะเป็นคีย์อินพุตที่เกี่ยวข้อง ค่าเป็นเอกลักษณ์ ตัวอย่างเช่นสมมติว่าข้อมูลที่ฉันป้อนคือ: a = dict() a['one']=1 a['two']=2 ฉันต้องการให้ผลลัพธ์ของฉันเป็น: {1: 'one', 2: 'two'} เพื่อชี้แจงฉันต้องการให้ผลลัพธ์ของฉันเทียบเท่ากับสิ่งต่อไปนี้: res = dict() res[1] = 'one' res[2] = 'two' วิธี Pythonic ที่เรียบร้อยเพื่อให้บรรลุสิ่งนี้?
102 python  dictionary 

5
เหตุใดอาร์กิวเมนต์ประเภทแผนที่ C ++ จึงต้องการตัวสร้างว่างเมื่อใช้ []
ดู รายการมาตรฐาน C ++ และประเภทที่สร้างได้ตามค่าเริ่มต้น ไม่ใช่ปัญหาใหญ่น่ารำคาญเพราะฉันไม่ต้องการให้ชั้นเรียนของฉันถูกสร้างอินสแตนซ์โดยไม่มีข้อโต้แย้ง #include &lt;map&gt; struct MyClass { MyClass(int t); }; int main() { std::map&lt;int, MyClass&gt; myMap; myMap[14] = MyClass(42); } สิ่งนี้ทำให้ฉันมีข้อผิดพลาด g ++ ต่อไปนี้: /usr/include/c++/4.3/bits/stl_map.h:419: ข้อผิดพลาด: ไม่มีฟังก์ชันที่ตรงกันสำหรับการเรียกไปที่ 'MyClass ()' สิ่งนี้จะคอมไพล์ได้ดีถ้าฉันเพิ่มตัวสร้างเริ่มต้น ฉันแน่ใจว่ามันไม่ได้เกิดจากไวยากรณ์ที่ไม่ถูกต้อง
101 c++  dictionary 

7
การวนซ้ำแฮชหรือใช้อาร์เรย์ใน PowerShell
ฉันใช้นี้ (จีน) ก้อนของรหัสที่จะดึงชุดของตารางจาก SQL Server กับBCP $OutputDirectory = "c:\junk\" $ServerOption = "-SServerName" $TargetDatabase = "Content.dbo." $ExtractTables = @( "Page" , "ChecklistItemCategory" , "ChecklistItem" ) for ($i=0; $i -le $ExtractTables.Length – 1; $i++) { $InputFullTableName = "$TargetDatabase$($ExtractTables[$i])" $OutputFullFileName = "$OutputDirectory$($ExtractTables[$i])" bcp $InputFullTableName out $OutputFullFileName -T -c $ServerOption } มันใช้งานได้ดี แต่ตอนนี้ตารางบางส่วนจำเป็นต้องดึงข้อมูลผ่านมุมมองและบางตารางก็ไม่ ดังนั้นฉันต้องการโครงสร้างข้อมูลดังนี้: …

6
แปลงพจนานุกรมเป็นรายการคอลเลกชันใน C #
ฉันมีปัญหาเมื่อพยายามแปลงพจนานุกรมเป็นรายการ ตัวอย่างถ้าฉันมีพจนานุกรมที่มีสตริงแม่แบบเป็นคีย์และสตริงเป็นค่า จากนั้นฉันต้องการแปลงคีย์พจนานุกรมเป็นรายการคอลเลกชันเป็นสตริง Dictionary&lt;string, string&gt; dicNumber = new Dictionary&lt;string, string&gt;(); List&lt;string&gt; listNumber = new List&lt;string&gt;(); dicNumber.Add("1", "First"); dicNumber.Add("2", "Second"); dicNumber.Add("3", "Third"); // So the code may something look like this //listNumber = dicNumber.Select(??????);
98 c#  list  dictionary 

6
วิธีเอาชนะ TypeError: unhashable type: 'list'
ฉันกำลังพยายามถ่ายไฟล์ที่มีลักษณะดังนี้: AAA x 111 AAB x 111 AAA x 112 AAC x 123 ... และใช้พจนานุกรมเพื่อให้ผลลัพธ์มีลักษณะเช่นนี้ {AAA: ['111', '112'], AAB: ['111'], AAC: [123], ...} นี่คือสิ่งที่ฉันพยายาม file = open("filename.txt", "r") readline = file.readline().rstrip() while readline!= "": list = [] list = readline.split(" ") j = list.index("x") k = list[0:j] v = list[j …

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