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

ในการเขียนโปรแกรม tuples คือ * ประเภทผลิตภัณฑ์ * แบบง่าย ๆ ซึ่งแสดงถึงคอลเล็กชันตามลำดับประเภท

4
การเปรียบเทียบ tuple ทำงานอย่างไรใน Python
ฉันได้อ่านหนังสือการเขียนโปรแกรมCore Pythonและผู้เขียนแสดงตัวอย่างเช่น: (4, 5) < (3, 5) # Equals false ดังนั้นฉันสงสัยว่ามันเป็นเท็จอย่างไร / ทำไมเท่ากัน? ไพ ธ อนเปรียบเทียบทูเปิลทั้งสองนี้อย่างไร Btw มันไม่ได้อธิบายไว้ในหนังสือ

7
วิธีการแปลงสตริงที่คั่นด้วยจุลภาคเป็นรายการใน Python?
รับสตริงที่เป็นลำดับของค่าหลายค่าคั่นด้วยเครื่องหมายจุลภาค: mStr = 'A,B,C,D,E' ฉันจะแปลงสตริงเป็นรายการได้อย่างไร mList = ['A', 'B', 'C', 'D', 'E']
169 python  parsing  list  tuples 

13
การใช้. NET 4.0 Tuples ในรหัส C # ของฉันเป็นการตัดสินใจออกแบบที่ไม่ดีหรือไม่?
ด้วยการเพิ่มคลาสTupleใน. net 4 ฉันพยายามตัดสินใจว่าการใช้มันในการออกแบบของฉันนั้นเป็นตัวเลือกที่ไม่ดีหรือไม่ วิธีที่ฉันเห็นมันTupleสามารถเป็นทางลัดในการเขียนคลาสผลลัพธ์ (ฉันแน่ใจว่ามีการใช้อื่น ๆ ด้วย) ดังนั้นนี่: public class ResultType { public string StringValue { get; set; } public int IntValue { get; set; } } public ResultType GetAClassedValue() { //..Do Some Stuff ResultType result = new ResultType { StringValue = "A String", IntValue = 2 }; return …

7
Python เพิ่มรายการลงใน tuple
ฉันมี object.ID บางตัวที่ฉันพยายามเก็บไว้ในเซสชันผู้ใช้เป็น tuple เมื่อฉันเพิ่มคนแรกที่มันทำงาน แต่ tuple ดูเหมือน(u'2',)แต่เมื่อฉันพยายามที่จะเพิ่มใหม่โดยใช้ข้อผิดพลาดได้mytuple = mytuple + new.idcan only concatenate tuple (not "unicode") to tuple

2
รับค่าหนึ่งค่าจาก tuple
มีวิธีรับค่าหนึ่งจาก tuple ใน Python โดยใช้การแสดงออก? def tup(): return (3, "hello") i = 5 + tup() # I want to add just the three ฉันรู้ว่าฉันสามารถทำสิ่งนี้: (j, _) = tup() i = 5 + j แต่นั่นจะเพิ่มสองสามบรรทัดลงในฟังก์ชันของฉันเพิ่มความยาวเป็นสองเท่า
152 python  tuples 

6
หลาม tuple เพื่อ dict
สำหรับ tuple ให้t = ((1, 'a'),(2, 'b')) dict(t)ส่งคืน{1: 'a', 2: 'b'} มีวิธีที่ดีที่จะได้รับ{'a': 1, 'b': 2}(ปุ่มและ vals แลกเปลี่ยน)? ในท้ายที่สุดฉันต้องการที่จะ1ได้รับคืน'a'หรือ2ได้รับ'b'การแปลงเป็นคำพูดไม่ใช่วิธีที่ดีที่สุด

6
แปลง tuple ที่มีชื่อเป็นพจนานุกรม
ฉันมีคลาส tuple ชื่อในหลาม class Town(collections.namedtuple('Town', [ 'name', 'population', 'coordinates', 'population', 'capital', 'state_bird'])): # ... ฉันต้องการแปลงอินสแตนซ์ทาวน์เป็นพจนานุกรม ฉันไม่ต้องการให้มันผูกติดอยู่กับชื่อหรือจำนวนของฟิลด์ในเมือง มีวิธีเขียนเช่นนี้หรือไม่ที่ฉันสามารถเพิ่มเขตข้อมูลเพิ่มเติมหรือส่งชื่อ tuple ที่แตกต่างไปจากเดิมอย่างสิ้นเชิงและรับพจนานุกรม ฉันไม่สามารถแก้ไขคำจำกัดความของคลาสเดิมได้ในรหัสของผู้อื่น ดังนั้นฉันต้องใช้อินสแตนซ์ของเมืองและแปลงเป็นพจนานุกรม


13
ฉันจะขยายทูเพิลเป็นอาร์กิวเมนต์ของฟังก์ชันเทมเพลตตัวแปรได้อย่างไร
พิจารณากรณีของฟังก์ชันเทมเพลตที่มีอาร์กิวเมนต์แม่แบบตัวแปร: template<typename Tret, typename... T> Tret func(const T&... t); ตอนนี้ผมมีขอบเขตของtของค่า ฉันจะเรียกfunc()ใช้ค่าทูเพิลเป็นอาร์กิวเมนต์ได้อย่างไร ฉันได้อ่านเกี่ยวกับbind()วัตถุฟังก์ชันพร้อมcall()ฟังก์ชันและapply()ฟังก์ชันในเอกสารอื่น ๆ ที่ล้าสมัยในปัจจุบัน การใช้งาน GNU GCC 4.4 ดูเหมือนจะมีcall()ฟังก์ชันในbind()คลาสนี้ แต่มีเอกสารประกอบเกี่ยวกับเรื่องนี้น้อยมาก บางคนแนะนำให้ใช้แฮ็กแบบเรียกซ้ำที่เขียนด้วยมือ แต่มูลค่าที่แท้จริงของอาร์กิวเมนต์แม่แบบตัวแปรคือสามารถใช้ได้ในกรณีเช่นข้างต้น ใครมีวิธีแก้คือหรือบอกใบ้ว่าจะอ่านได้ที่ไหน
145 c++  c++11  arguments  tuples 

4
HLists ไม่มีอะไรมากไปกว่าการเขียนสิ่งที่ซับซ้อน
ฉันสนใจที่จะค้นหาว่ามีความแตกต่างอยู่ที่ใดและโดยทั่วไปแล้วเพื่อระบุกรณีการใช้งานที่เป็นที่ยอมรับซึ่ง HLists ไม่สามารถใช้งานได้ (หรือมากกว่าไม่ให้ผลประโยชน์ใด ๆ กับรายการปกติ) (ฉันรู้ว่ามี 22 (ฉันเชื่อว่า) TupleNในสกาล่าในขณะที่หนึ่งต้องการเพียง HList เดียว แต่นั่นไม่ใช่ความแตกต่างทางแนวคิดที่ฉันสนใจ) ฉันได้ทำเครื่องหมายคำถามสองสามข้อในข้อความด้านล่าง อาจไม่จำเป็นที่จะต้องตอบคำถามพวกเขามีจุดมุ่งหมายที่จะชี้ให้เห็นสิ่งที่ไม่ชัดเจนสำหรับฉันและเพื่อเป็นแนวทางในการสนทนาในบางทิศทาง แรงจูงใจ เมื่อเร็ว ๆ นี้ฉันเคยเห็นคำตอบสองสามข้อเกี่ยวกับ SO ที่ผู้คนแนะนำให้ใช้ HLists (เช่นที่จัดทำโดยShapeless ) รวมถึงคำตอบที่ถูกลบสำหรับคำถามนี้ มันก่อให้เกิดการสนทนานี้ซึ่งจะจุดประกายคำถามนี้ Intro ดูเหมือนว่าสำหรับฉันแล้ว hlists นั้นจะมีประโยชน์ก็ต่อเมื่อคุณรู้จำนวนองค์ประกอบและประเภทที่แม่นยำเท่านั้น จำนวนนั้นไม่สำคัญ แต่ดูเหมือนไม่น่าเป็นไปได้ที่คุณจะต้องสร้างรายการที่มีองค์ประกอบของชนิดที่แตกต่างกัน แต่เป็นที่รู้จักอย่างแน่นอนในแบบสแตติก แต่คุณไม่รู้จักหมายเลขของพวกเขาแบบคงที่ คำถามที่ 1:คุณสามารถเขียนตัวอย่างเช่นในวงได้หรือไม่? สัญชาตญาณของฉันคือการมี hlister ที่แม่นยำแบบคงที่พร้อมด้วยจำนวนองค์ประกอบที่ไม่รู้จักแบบคงที่ (โดยพลการสัมพันธ์กับลำดับชั้นของชั้นเรียนที่กำหนด) ไม่เข้ากัน HLists vs. Tuples ถ้านี่เป็นเรื่องจริงนั่นคือคุณรู้จำนวนและประเภทของคำถาม - คำถามที่ 2:ทำไมไม่ใช้ n-tuple? แน่นอนว่าคุณสามารถทำแผนที่และพับ …
144 scala  types  tuples  hlist  shapeless 

6
อะไรคือความแตกต่างระหว่าง System.ValueTuple และ System.Tuple?
ฉันถอดรหัสไลบรารี C # 7 บางส่วนและเห็นValueTupleการใช้งานทั่วไป อะไรคืออะไรValueTuplesและทำไมไม่Tupleแทน? https://docs.microsoft.com/en-gb/dotnet/api/system.tuple https://docs.microsoft.com/en-gb/dotnet/api/system.valuetuple
144 c#  .net  tuples  c#-7.0 

9
ทำไมเราต้องใช้สิ่งอันดับใน Python (หรือชนิดข้อมูลที่ไม่เปลี่ยนรูปแบบ)
ฉันได้อ่านแบบฝึกหัด python หลายตัว (Dive Into Python สำหรับหนึ่ง) และการอ้างอิงภาษาบน Python.org - ฉันไม่เห็นว่าทำไมภาษาจึงต้องการสิ่งอันดับ สิ่งอันดับไม่มีวิธีการเปรียบเทียบกับรายการหรือชุดและถ้าฉันต้องแปลง tuple เป็นชุดหรือรายการเพื่อให้สามารถเรียงลำดับได้จุดของการใช้สิ่งอันดับคืออะไร เปลี่ยนไม่ได้? ทำไมทุกคนถึงสนใจว่าตัวแปรอาศัยอยู่ในที่ที่แตกต่างกันในความทรงจำมากกว่าตอนที่มันถูกจัดสรรไว้ในตอนแรก? ธุรกิจทั้งหมดของการเปลี่ยนแปลงไม่ได้ใน Python นี้ดูเหมือนจะเน้นมากกว่า ใน C / C ++ ถ้าฉันจัดสรรตัวชี้และชี้ไปที่หน่วยความจำที่ใช้ได้ฉันไม่สนใจว่าที่อยู่นั้นอยู่ที่ไหนตราบใดที่มันไม่ว่างก่อนที่ฉันจะใช้ เมื่อใดก็ตามที่ฉันอ้างอิงตัวแปรนั้นฉันไม่จำเป็นต้องรู้ว่าตัวชี้ยังคงชี้ไปยังที่อยู่เดิมหรือไม่ ฉันแค่ตรวจสอบโมฆะและใช้มัน (หรือไม่) ใน Python เมื่อฉันจัดสรรสตริง (หรือ tuple) กำหนดให้กับ x จากนั้นแก้ไขสตริงทำไมฉันถึงสนใจว่ามันเป็นวัตถุดั้งเดิมหรือไม่ ตราบใดที่ตัวแปรชี้ไปยังข้อมูลของฉันนั่นคือทั้งหมดที่สำคัญ >>> x='hello' >>> id(x) 1234567 >>> x='good bye' >>> id(x) 5432167 x ยังคงอ้างอิงข้อมูลที่ฉันต้องการทำไมทุกคนต้องสนใจว่า …
140 python  tuples 

4
วิธีสร้างคอลัมน์ทูเพิลจากสองคอลัมน์ใน Pandas
ฉันมี Pandas DataFrame และฉันต้องการรวมคอลัมน์ 'lat' และ 'long' เพื่อสร้างทูเพิล <class 'pandas.core.frame.DataFrame'> Int64Index: 205482 entries, 0 to 209018 Data columns: Month 205482 non-null values Reported by 205482 non-null values Falls within 205482 non-null values Easting 205482 non-null values Northing 205482 non-null values Location 205482 non-null values Crime type 205482 non-null values long …

12
เหตุใดการใช้ tuples ใน C ++ จึงไม่ธรรมดา
เหตุใดจึงดูเหมือนไม่มีใครใช้ tuples ใน C ++ ทั้งBoost Tuple Libraryหรือไลบรารีมาตรฐานสำหรับ TR1 ฉันอ่านโค้ด C ++ มาเยอะแล้วและไม่ค่อยเห็นการใช้ทูเปิล แต่ฉันมักจะเห็นสถานที่มากมายที่ทูเปิลสามารถแก้ปัญหาต่างๆได้ (โดยปกติจะคืนค่าหลายค่าจากฟังก์ชัน) Tuples ช่วยให้คุณทำสิ่งดีๆได้ทุกประเภทเช่นนี้: tie(a,b) = make_tuple(b,a); //swap a and b ที่ดีกว่านี้อย่างแน่นอน: temp=a; a=b; b=temp; แน่นอนคุณสามารถทำได้เสมอ: swap(a,b); แต่ถ้าคุณต้องการหมุนสามค่าล่ะ? คุณสามารถทำสิ่งนี้ได้ด้วยสิ่งทอ: tie(a,b,c) = make_tuple(b,c,a); Tuples ยังช่วยให้สามารถส่งคืนตัวแปรหลายตัวจากฟังก์ชันได้ง่ายกว่ามากซึ่งอาจเป็นกรณีที่พบได้บ่อยกว่าการแลกเปลี่ยนค่า การใช้การอ้างอิงเพื่อส่งกลับค่าเป็นสิ่งที่ไม่สวยงามอย่างแน่นอน มีข้อบกพร่องใหญ่ ๆ สำหรับสิ่งที่ฉันไม่ได้นึกถึงหรือไม่? ถ้าไม่เป็นเช่นนั้นทำไมพวกเขาจึงไม่ค่อยใช้? ช้ากว่าไหม หรือว่าแค่คนไม่ชิน? เป็นความคิดที่ดีที่จะใช้ tuples หรือไม่?
125 c++  tuples 

17
Python: การเปลี่ยนค่าในทูเปิล
ฉันยังใหม่กับ python ดังนั้นคำถามนี้อาจจะเป็นพื้นฐานเล็กน้อย ฉันเรียกทูเพิลvaluesซึ่งมีสิ่งต่อไปนี้: ('275', '54000', '0.0', '5000.0', '0.0') ฉันต้องการเปลี่ยนค่าแรก (กล่าวคือ275) ในทูเปิลนี้ แต่ฉันเข้าใจว่าสิ่งที่ไม่เปลี่ยนรูปจึงvalues[0] = 200ไม่ได้ผล ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?
124 python  tuples 

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