首页  >  文章  >  后端开发  >  Python程序将一个列表分成两半

Python程序将一个列表分成两半

WBOY
WBOY转载
2023-09-19 15:13:021124浏览

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 使用不同的方法将列表分成两半。

以上是Python程序将一个列表分成两半的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除