程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python 競賽題-01-下面哪個不是 Python 的運算符?

編輯:Python

准備收集一些有趣、流行、有一定挑戰、長知識的 Python 題目,文章標題均以「Python 競賽題」開頭。

下面哪個不是 Python 的運算符:

  • A) @

  • B) ~

  • C) **

  • D) //

  • E) &

  • F) None of the above?

選好了嗎?選好了再往下翻。

正確答案是 F

驚不驚喜、意不意外?

解釋:

先看容易的

B) ~ 表示按位取反,比如 ~1 的結果就是 -2:

>>> ~1
-2

如果你想知道為什麼是 -2,那就需要知道計算機都是以補碼形式保存數字的,可以看看前文關於補碼,大學老師講的很不負責任。

C) ** 這個是冪運算,比如 2**3 就表示 2 的 3 次方:

>>>2 ** 3 
8

D) //  這個表示除法取整數:

>>> 3//2
1
>>> 5//2
2

E) & 這個是按位與運算:

>>> 1 & 1
1
>>> 1 & 0
0
>>> 0 & 0
0

A) @ 這個很多人認為不是運算符,其實是的,表示矩陣乘法,我們可以解釋器鍵入 help('NUMBERMETHODS') 查看:


不過,@ 運算符是受限的,只能在特定的庫中使用,比如在 numpy 中:

>>> x1
array([[1, 2],
       [3, 4]])
>>> y1
array([[2, 1],
       [4, 3]])
>>> x1 @ y1
array([[10,  7],
       [22, 15]])

因此答案是 F。

如果有收獲,歡迎點贊、轉發、評論。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved