Python 将列表分成两半

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来完成。然而,如果列表的长度是奇数或列表不是对称的,当我们除以列表时会得到一个浮点数。为了取整,我们将使用floor运算符(//)。

示例

在这种方法中,我们主要解决了一个不同的情况,即如果用户所要求的元素是奇数个,那么完成任务的过程将是什么样的。在这里,split函数返回两个不相等的列表,因为列表的元素数量是奇数。中间值是(5/2)=2.5,因为列表长度为5个项目。比除法结果小于或等于的最接近的整数值由floor运算符返回。在这种情况下,floor运算符返回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

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程