python对两个数组进行合并排列处理的两种方法

 更新时间:2023年05月23日 10:24:10   作者:m0_52233502  
最近遇到数组合并问题,以此记录解决方法,供大家参考学习,下面这篇文章主要给大家介绍了关于python对两个数组进行合并排列处理的两种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

前言

如何使用python对两个数组(列表)进行合并(合并为一个数组),并按照从小到大的顺序进行排列?

我们先随意写两个数组:arr1和arr2。

第一种方法:

先使用extend函数将arr1和arr2合并为一个数组,再使用sort函数将新arr1按照从小到大的顺序进行排列。

# 第一种方式
arr1 = [1, 4, 2, 3, 7, 6, 9]
arr2 = [3, 6, 5, 7, 9, 8]
print(arr1)
print(arr2)
arr1.extend(arr2)  #使用extend函数进行拼接
arr1.sort(reverse=False)
print(arr1)

运行结果如下: 

[1, 4, 2, 3, 7, 6, 9]
[3, 6, 5, 7, 9, 8]
[1, 2, 3, 3, 4, 5, 6, 6, 7, 7, 8, 9, 9]

进程已结束,退出代码0

为什么不使用append函数运行?????

我们可以尝试运行一下。

arr1 = [1, 4, 2, 3, 7, 6, 9]
arr2 = [3, 6, 5, 7, 9, 8]
print(arr1)
print(arr2)
arr1.append(arr2)
print(arr1)

最后得到的结果是:

[1, 4, 2, 3, 7, 6, 9]
[3, 6, 5, 7, 9, 8]
[1, 4, 2, 3, 7, 6, 9, [3, 6, 5, 7, 9, 8]]

进程已结束,退出代码0

 由上可知,它并不能将两个数组拼接,而是合成了一个二维数组

第二种方法:

使用模拟指针合并为一个数组。我们可以通过一个数组(列表)中每个元素的下标来找出对应的值,那么储存这个元素位置的下标值的变量可以视作一个指针,但并不是真正意义上的指针。这里写出来只是为了能提供一种新的思路。

先sort将两个数组排序,再利用for循环进行拼接。

arr1 = [1, 4, 2, 3, 7, 6, 9]
arr2 = [3, 6, 5, 7, 9, 8]
arr1.sort(reverse=False) # 若为True,则是从大到小排列
arr2.sort(reverse=False)
ind = 0
ans = arr1.copy()
for i in range(0, len(arr2)):
    while ind < len(arr1):       # ind的范围不能超过数组元素下标的最大值
        if arr2[i] <= arr1[ind]:
            ans.insert(ind + i, arr2[i])    # 向第一个数组中插入第二个数组中的数
            break
        else:
            ind += 1       # 如果ind指向的数比i指向的数小,则ind向后一位
    else:
        ans = ans + arr2[i:]
print(ans)

运行结果如下:  

[1, 2, 3, 3, 4, 5, 6, 6, 7, 7, 8, 9, 9]

进程已结束,退出代码0

补充:python中多个数组的行合并以及列合并

import numpy as np
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
#数组纵向合并
mergeA = np.vstack((a, b))
print("mergeA: ", mergeA)
#mergeA:  [[1 2 3 4]
#          [5 6 7 8]]
#数组横向合并
mergeB = np.hstack((a, b))
print("mergeB: ", mergeB)
#mergeB:  [1 2 3 4 5 6 7 8]

总结 

到此这篇关于python对两个数组进行合并排列处理的两种方法的文章就介绍到这了,更多相关python数组合并排列内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python二叉树类以及其4种遍历方法实例

    python二叉树类以及其4种遍历方法实例

    二叉树是一种特殊的树,最直观地体现于它的每个节点至多有两个子节点,二叉树是非常实用的一种数据结构,常常用于实现二叉查找树及二叉堆等,下面这篇文章主要给大家介绍了关于python二叉树类以及其4种遍历方法的相关资料,需要的朋友可以参考下
    2022-05-05
  • PYTHON绘制雷达图代码实例

    PYTHON绘制雷达图代码实例

    这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 在Python中实现决策树算法的示例代码

    在Python中实现决策树算法的示例代码

    决策树(Decision Tree)是一种常见的机器学习算法,被广泛应用于分类和回归任务中,并且再其之上的随机森林和提升树等算法一直是表格领域的最佳模型,所以本文将介绍理解其数学概念,并在Python中动手实现,这可以作为了解这类算法的基础知识
    2023-08-08
  • Python中如何将Tqdm与Asyncio结合使用呢

    Python中如何将Tqdm与Asyncio结合使用呢

    这篇文章主要和大家详细介绍了在Python中如何将Tqdm与Asyncio结合使用呢,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-05-05
  • python for循环remove同一个list过程解析

    python for循环remove同一个list过程解析

    这篇文章主要介绍了python for循环remove同一个list过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • python使用pil进行图像处理(等比例压缩、裁剪)实例代码

    python使用pil进行图像处理(等比例压缩、裁剪)实例代码

    这篇文章主要介绍了python使用pil进行图像处理(等比例压缩、裁剪)实例代码,首先介绍了pil的相关内容,然后分享了实例代码,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Python List remove()实例用法详解

    Python List remove()实例用法详解

    在本篇内容里小编给大家整理了一篇关于Python List remove()方法及实例,有需要的朋友们跟着学习下。
    2021-08-08
  • python高效过滤出文件夹下指定文件名结尾的文件实例

    python高效过滤出文件夹下指定文件名结尾的文件实例

    今天小编就为大家分享一篇python高效过滤出文件夹下指定文件名结尾的文件实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python 实现屏幕录制示例

    python 实现屏幕录制示例

    今天小编就为大家分享一篇python 实现屏幕录制示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python中__str__()的妙用

    Python中__str__()的妙用

    本文主要介绍了Python中__str__()的妙用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论