欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python將二維數(shù)組升為一維數(shù)組或二維降為一維方法實(shí)例

 更新時(shí)間:2022年11月18日 11:15:01   作者:趙孝正  
在實(shí)際應(yīng)用的過(guò)程中,遇到列表或是數(shù)組的維數(shù)不同,需要變換的問(wèn)題,如二維列表/數(shù)組變成了一維列表/數(shù)組,下面這篇文章主要給大家介紹了關(guān)于python將二維數(shù)組升為一維數(shù)組或二維降為一維的相關(guān)資料,需要的朋友可以參考下

1. 二維(多維)數(shù)組降為一維數(shù)組

方法1: reshape()+concatenate 函數(shù),

這個(gè)方法是間接法,利用 reshape() 函數(shù)的屬性,間接的把二維數(shù)組轉(zhuǎn)換為一維數(shù)組;

import numpy as np

mulArrays = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(list(np.concatenate(mulArrays.reshape((-1, 1), order="F"))))

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

方法2: flatten() 函數(shù),

推薦使用這個(gè)方法,這個(gè)方法是 numpy 自帶的函數(shù);

# coding = utf-8
import numpy as np
import random

# 把二維數(shù)組轉(zhuǎn)換為一維數(shù)組
t1 = np.arange(12)
print(t1)
Out[0]: [ 0  1  2  3  4  5  6  7  8  9 10 11]
t2 = t1.reshape(3, 4)
print(t2)
 
t3 = t2.reshape(t2.shape[0] * t2.shape[1], )
print(t3)
 
t4 = t2.flatten()
print(t4)

運(yùn)行效果如下圖所示:

可以看到這兩種方式都可以把二維數(shù)組轉(zhuǎn)換為一維數(shù)組,但是推薦使用 flatten() 函數(shù),該方法也可以將多維數(shù)組轉(zhuǎn)換為一維數(shù)組。

import numpy as np
a = np.array([[1, 2], [3, 4], [9, 8]])
b = a.flatten()
print(b)

輸出結(jié)果為:[1, 2, 3, 4, 9, 8]

方法3: itertools.chain

import numpy as np
a = np.array([[1, 2], [3, 4], [9, 8]])

# 使用庫(kù)函數(shù)
from itertools import chain
a_a = list(chain.from_iterable(a))
print(a_a)

輸出結(jié)果為:[1, 2, 3, 4, 9, 8]

方法4: sum()

mulArrays = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(sum(mulArrays, []))  # [1, 2, 3, 4, 5, 6, 7, 8, 9]

方法5:operator.add + reduce

import operator
from functools import reduce
mulArrays = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(reduce(operator.add, mulArrays))  # [1, 2, 3, 4, 5, 6, 7, 8, 9]

方法6:列表推導(dǎo)式

mulArrays = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print([i for arr in mulArrays for i in arr])  # [1, 2, 3, 4, 5, 6, 7, 8, 9]

2. 一維數(shù)組升為 2 維數(shù)組

方法1:numpy 方法

利用函數(shù) reshape 或者是 resize。

使用 reshape 的時(shí)候需要注意 reshape 的結(jié)果不改變,因此適用于還要用到原數(shù)組的情況。

使用 resize 會(huì)改變?cè)瓟?shù)組,因此適用于一定需要修改后的結(jié)果為值的情況。

import numpy as np

x = np.arange(20)  # 生成數(shù)組
print(x)

result = x.reshape((4, 5))  # 將一維數(shù)組變成4行5列  原數(shù)組不會(huì)被修改或者覆蓋
x.resize((2, 10))  # 覆蓋原來(lái)的數(shù)據(jù)將新的結(jié)果給原來(lái)的數(shù)組
print(x)

輸出結(jié)果

[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19]

[[ 0  1  2  3  4  5  6  7  8  9]
 [10 11 12 13 14 15 16 17 18 19]]

總結(jié)

到此這篇關(guān)于python將二維數(shù)組升為一維數(shù)組或二維降為一維的文章就介紹到這了,更多相關(guān)python二維數(shù)組升為一維數(shù)組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 9行Python3代碼實(shí)現(xiàn)批量提取PDF文件的指定內(nèi)容

    9行Python3代碼實(shí)現(xiàn)批量提取PDF文件的指定內(nèi)容

    這篇文章主要為大家詳細(xì)介紹了如何通過(guò)9行Python3代碼實(shí)現(xiàn)批量提取PDF文件的指定內(nèi)容,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2022-12-12
  • Python Django教程之實(shí)現(xiàn)待辦事項(xiàng)應(yīng)用程序

    Python Django教程之實(shí)現(xiàn)待辦事項(xiàng)應(yīng)用程序

    Django是一個(gè)基于Python Web框架的高級(jí)Web框架,允許快速開(kāi)發(fā)和干凈,務(wù)實(shí)的設(shè)計(jì)。本文將創(chuàng)建一個(gè)待辦事項(xiàng)應(yīng)用程序,以了解Django的基礎(chǔ)知識(shí),感興趣的可以嘗試一下
    2022-10-10
  • Python實(shí)現(xiàn)線性插值和三次樣條插值的示例代碼

    Python實(shí)現(xiàn)線性插值和三次樣條插值的示例代碼

    這篇文章主要介紹了Python實(shí)現(xiàn)線性插值和三次樣條插值的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • pytorch-神經(jīng)網(wǎng)絡(luò)擬合曲線實(shí)例

    pytorch-神經(jīng)網(wǎng)絡(luò)擬合曲線實(shí)例

    今天小編就為大家分享一篇pytorch-神經(jīng)網(wǎng)絡(luò)擬合曲線實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python用selenium實(shí)現(xiàn)自動(dòng)登錄和下單的項(xiàng)目實(shí)戰(zhàn)

    Python用selenium實(shí)現(xiàn)自動(dòng)登錄和下單的項(xiàng)目實(shí)戰(zhàn)

    本文主要介紹了Python用selenium實(shí)現(xiàn)自動(dòng)登錄和下單的項(xiàng)目實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python實(shí)現(xiàn)簡(jiǎn)易凱撒密碼的示例代碼

    Python實(shí)現(xiàn)簡(jiǎn)易凱撒密碼的示例代碼

    密碼的使用最早可以追溯到古羅馬時(shí)期,《高盧戰(zhàn)記》有描述愷撒曾經(jīng)使用密碼來(lái)傳遞信息,即所謂的“愷撒密碼”。本文將利用Python實(shí)現(xiàn)簡(jiǎn)易的凱撒密碼,感興趣的可以了解一下
    2022-09-09
  • Python可視化函數(shù)plt.scatter詳解

    Python可視化函數(shù)plt.scatter詳解

    這篇文章主要介紹了Python可視化函數(shù)plt.scatter詳解,?關(guān)于matplotlib的scatter函數(shù)有許多活動(dòng)參數(shù),如果不專門(mén)注解,是無(wú)法掌握精髓的,本文專門(mén)針對(duì)scatter的參數(shù)和調(diào)用說(shuō)起,并配有若干案例,需要的朋友可以參考下
    2023-04-04
  • 詳解Python中的分支和循環(huán)結(jié)構(gòu)

    詳解Python中的分支和循環(huán)結(jié)構(gòu)

    這篇文章主要介紹了Python中的分支和循環(huán)結(jié)構(gòu),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02
  • python代碼能做成軟件嗎

    python代碼能做成軟件嗎

    在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于把python代碼做成軟件的方法,有興趣的朋友們可以閱讀下。
    2020-07-07
  • 如何用python批量發(fā)送工資條郵件

    如何用python批量發(fā)送工資條郵件

    大家好,本篇文章主要講的是如何用python批量發(fā)送工資條郵件,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01

最新評(píng)論