Python 程式將列表分成兩半
在 Python 中,可以使用列表讓單個變數包含多個專案。列表是 Python 中用於儲存資料集合的四種內建資料型別之一;另外三種是元組、集合和字典,每種都有其特定的用途。
什麼是列表?
方括號用於構建列表。列表是 Python 中最有效的工具,因為它們不一定是同構的。列表中可以包含整數、字串和物件等資料型別。由於列表是可變的,因此即使在建立後也可以對其進行更改。
在本文中,我們將探討使用 Python 程式設計將列表分成兩半的各種方法。列表是可變資料型別之一,可以儲存物件的集合。使用這些技術,您將能夠輕鬆地將任何列表分成兩半!
使用切片技術
在第一種情況下,列表被分成兩半或兩部分。根據列表的長度,這兩部分的大小可以相等或不相等。可以使用切片方法將列表分割。
演算法
建立一個列表並使用其長度的一半初始化其中間索引。
分別從開始到中間索引和從中間索引到末尾將其分成兩半。
列印原始列表以及每個分割後的部分。
在將這些部分合併成一個排序的列表之前,對每個部分進行排序。
最後,列印這個新的合併排序列表。
示例
以下示例建立一個包含 6 個元素的列表,然後將索引設定為 3。然後它根據該索引將列表分成兩半 - 前半部分是索引之前的全部元素,後半部分是索引之後的全部元素。最後,它打印出列表的兩半。
#create list
list_1 = [10,20,30,40,50,60]
index = 3
first_half = list_1 [:index]
second_half = list_1 [index:]
print('The primary list is: ',list_1)
print("First half of list is ",first_half)
print("Second half of list is ",second_half)
輸出
The primary list is: [10, 20, 30, 40, 50, 60] First half of list is [10, 20, 30] Second half of list is [40, 50, 60]
在這裡,在上面解釋的方法中,我們有索引,並且列表的長度是預定義的。如果分割索引或兩部分的大小未指定會怎樣?下一步是確定列表的中間索引,這可以透過將列表的長度乘以 2 來完成。但是,如果列表的長度是奇數整數或列表不是對稱的,當我們除以列表時,我們將獲得一個浮點值。為了對結果進行四捨五入,我們將使用地板運算子 (//)。
示例
在這種方法中,我們的主要重點是解決不同的條件,即如果使用者要求的元素數量為奇數,那麼完成任務的過程是什麼。在這裡,split 函式返回兩個不相等的列表,因為列表的元素數量為奇數。中間位置為 (5/2) = 2.5,因為列表有 5 個元素。地板運算子返回小於或等於除法結果的最近整數。在本例中,地板運算子返回 2 而不是 2.5。
演算法
定義一個函式,該函式接收數字列表並提示使用者輸入值。
使用 for 迴圈遍歷列表,
然後使用 append() 函式將每個數字除以 2 並找到其中間索引。
完成後提示使用者輸入。
以下示例顯示程式接收使用者輸入的數字列表並將其分成兩半。它要求使用者輸入他們想要在列表中包含的元素數量,然後提示他們一次輸入一個元素。
中間索引是透過將列表的長度除以 2 計算出來的,然後使用此索引呼叫 split_list(),它使用切片將列表的前半部分和後半部分分開並分別返回兩個列表。
def split_list(input_L,n):
first_half = input_L[:n]
second_half = input_L[n:]
return first_half,second_half
if __name__ == "__main__" :
list_1 = []
length = int(input("Enter the number of elements you want in list : "))
for i in range(0, length):
item = int(input("Enter the element for list "+str(i+1)+" :"))
list_1.append (item)
middle_index = length//2
first,second = split_list (list_1,middle_index)
print ("Primary list: ", list_1)
print ("First half of the list is: ", first)
print ("second half of the list is: ", second)
輸出
執行上述程式後,將生成以下輸出 -
Enter the number of elements you want in list: 5 Enter the element for list 1:98 Enter the element for list 2:60 Enter the element for list 3:45 Enter the element for list 4:33 Enter the element for list 5:55 Primary list: [98, 60, 45, 33, 55] First half of the list is: [98, 60] second half of the list is: [45, 33, 55]
結論
在本文中,我們使用了不同的方法使用 python 將列表分成兩半。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP