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

สไลซ์คือการแสดงส่วนหนึ่งของลำดับซึ่งมักกำหนดโดยการอ้างอิงถึงลำดับพื้นฐานดัชนีที่ให้ตำแหน่งเริ่มต้นความยาวหรือตำแหน่งสิ้นสุดและเป็นทางเลือกที่จะเป็นค่า "ก้าว" หรือ "ก้าว" โปรดใช้แท็ก "object-slicing" สำหรับปัญหาการแบ่งส่วนใน C ++ และ "program-slicing" สำหรับเทคนิคการวิเคราะห์

9
คู่จากรายการเดียว
บ่อยครั้งที่ฉันพบว่าจำเป็นต้องประมวลผลรายการทีละคู่ ฉันสงสัยว่าวิธีใดจะเป็นวิธีที่มีประสิทธิภาพและมีประสิทธิภาพและพบสิ่งนี้ใน Google pairs = zip(t[::2], t[1::2]) ฉันคิดว่านั่นเพียงพอแล้ว แต่หลังจากการสนทนาล่าสุดเกี่ยวกับสำนวนเทียบกับประสิทธิภาพฉันตัดสินใจทำการทดสอบบางอย่าง: import time from itertools import islice, izip def pairs_1(t): return zip(t[::2], t[1::2]) def pairs_2(t): return izip(t[::2], t[1::2]) def pairs_3(t): return izip(islice(t,None,None,2), islice(t,1,None,2)) A = range(10000) B = xrange(len(A)) def pairs_4(t): # ignore value of t! t = B return izip(islice(t,None,None,2), islice(t,1,None,2)) …
101 python  list  zip  slice  idioms 

6
แปลว่าอะไร?
ฉันกำลังวิเคราะห์โค้ด Python และไม่รู้ว่าอะไร pop = population[:] หมายถึง. มันเป็นรายการอาร์เรย์ใน Java หรือเหมือนอาร์เรย์สองมิติหรือไม่?
100 python  arrays  syntax  slice 

3
ช่วงบนอินเทอร์เฟซ {} ซึ่งจัดเก็บชิ้นส่วน
t interface{}รับสถานการณ์ที่คุณมีฟังก์ชั่นที่ยอมรับ หากพิจารณาแล้วว่าtเป็นชิ้นฉันจะทำrangeอย่างไร func main() { data := []string{"one","two","three"} test(data) moredata := []int{1,2,3} test(data) } func test(t interface{}) { switch reflect.TypeOf(t).Kind() { case reflect.Slice: // how do I iterate here? for _,value := range t { fmt.Println(value) } } } ไปที่ Playground ตัวอย่าง: http://play.golang.org/p/DNldAlNShB

7
Pandas เลือกตามป้ายกำกับบางครั้งจะส่งคืน Series บางครั้งก็ส่งคืน DataFrame
ใน Pandas เมื่อฉันเลือกป้ายกำกับที่มีเพียงรายการเดียวในดัชนีฉันจะได้ซีรี่ส์กลับคืนมา แต่เมื่อฉันเลือกรายการที่มีมากกว่าหนึ่งรายการฉันจะได้รับกรอบข้อมูลกลับคืนมา ทำไมถึงเป็นเช่นนั้น? มีวิธีใดบ้างที่จะทำให้แน่ใจว่าฉันได้รับ data frame กลับมาเสมอ In [1]: import pandas as pd In [2]: df = pd.DataFrame(data=range(5), index=[1, 2, 3, 3, 3]) In [3]: type(df.loc[3]) Out[3]: pandas.core.frame.DataFrame In [4]: type(df.loc[1]) Out[4]: pandas.core.series.Series

3
Slice ใน Swift คืออะไร?
Slice ใน Swift คืออะไรและแตกต่างจากอาร์เรย์อย่างไร จากเอกสารประกอบลายเซ็นประเภทของตัวห้อย (ช่วง) คือ: subscript(Range<Int>) -> Slice<T> ทำไมไม่คืนอื่นArray<T>แทนที่จะเป็นSlice<T>? ดูเหมือนว่าฉันสามารถเชื่อมชิ้นส่วนกับอาร์เรย์ได้: var list = ["hello", "world"] var slice: Array<String> = [] + list[0..list.count] แต่สิ่งนี้ทำให้เกิดข้อผิดพลาด: ไม่พบโอเวอร์โหลดสำหรับ "ตัวห้อย" ที่ยอมรับอาร์กิวเมนต์ที่ให้มา var list = ["hello", "world"] var slice: Array<String> = list[0..list.count] Slice คืออะไร?
85 swift  slice 

9
การเข้าร่วมองค์ประกอบของรายการหากองค์ประกอบเหล่านั้นอยู่ในระหว่างสองช่องว่าง
ฉันมีอินพุตเช่นนี้: ['assembly', '', 'py', 'tho', 'n', '', 'ja', 'va', '', 'rub', 'y', '', 'java', 'script', '', 'c++'] ฉันต้องการเข้าร่วมองค์ประกอบระหว่าง''เพื่อให้ได้ผลลัพธ์เช่นนี้ ['assembly', 'python', 'java', 'ruby', 'javascript', 'c++'] ฉันลองใช้joinและแบ่งรายการแบบนี้: a=['assembly', '', 'py', 'tho', 'n', '', 'ja', 'va', '', 'rub', 'y', '', 'java', 'script', '', 'c++'] a[2:5] = [''.join(a[ 2: 5])] a=['assembly', '', 'python', '', …

4
Tuple slicing ไม่ส่งคืนวัตถุใหม่ซึ่งต่างจากการแบ่งส่วนรายการ
ใน Python (2 และ 3) เมื่อใดก็ตามที่เราใช้การแบ่งรายการมันจะส่งคืนวัตถุใหม่เช่น: l1 = [1,2,3,4] print(id(l1)) l2 = l1[:] print(id(l2)) เอาท์พุต >>> 140344378384464 >>> 140344378387272 หากสิ่งเดียวกันซ้ำกับ tuple วัตถุเดียวกันจะถูกส่งกลับเช่น: t1 = (1,2,3,4) t2 = t1[:] print(id(t1)) print(id(t2)) เอาท์พุต >>> 140344379214896 >>> 140344379214896 มันจะดีถ้ามีใครบางคนสามารถทำให้เข้าใจว่าทำไมสิ่งนี้ถึงเกิดขึ้นตลอดประสบการณ์ Python ของฉันฉันอยู่ภายใต้การแสดงผลชิ้นส่วนที่ว่างเปล่าส่งคืนวัตถุใหม่ ความเข้าใจของฉันคือการส่งคืนวัตถุเดียวกันกับสิ่งอันดับที่ไม่เปลี่ยนรูปและไม่มีจุดสร้างสำเนาใหม่ แต่ก็ไม่ได้กล่าวถึงในเอกสารทุกที่
12 python  list  tuples  slice  cpython 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.