簡體   English   中英

賦值后跟布爾運算符

[英]assignment followed by boolean operator

我遇到過這樣的語句,其中賦值(在本例中為 numpy 數據數組的第一列)后跟布爾運算符。 比如這個。

indices = data[:,1] == 1

如何在偽代碼中解釋這里發生的事情,以及從該語句生成什么類型​​的輸出?

在這種情況下,接下來是這樣的聲明:

jan_data = data[indices]

data[:,1] == 1是一個將計算為一個值的表達式。 該值將分配給indices 使用括號,您可以將其視為indices = (data[:,1] == 1) 它不是“后跟布爾運算符的賦值”。 它是一個賦值,其右側是一個包含布爾運算符的表達式。 您可以分配a == b的結果,就像分配a + b的結果一樣。

類型可以定義這種比較返回什么樣的值。 在這種情況下,我懷疑data是一個 numpy 數組,比較 numpy 數組會為您提供另一個布爾值的 numpy 數組,條件為真時為 True,條件為假時為 False。 因此,如果data[:,1]類似於[1, 2, 3, 2, 1] ,則data[:,1] == 1將是[True, False, False, False, True] ,並且這是將分配給indices的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM