成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

被“嫌棄”的分號的一生:不要在Python中使用無用分號了

開發 后端
筆者準備了一篇小指南,解釋為什么不應該在Python中使用分號,并列出了少數特殊情況。

本文轉載自公眾號“讀芯術”(ID:AI_Discovery)

我常在C / C ++語言中看到很多分號。在代碼中,分號表示語句終止。Python并未強制使用分號來分隔語句,但因為分號導致Python亂碼的情況可不少。

最近,筆者正在學習Python的數據科學課程。講師講解了條件語句并編寫了以下代碼:

  1. temp =10;if temp <12: print('It is cold'); cold = True

筆者當時的反應是:這太可怕了!分號僅在Python中的非典型情況下使用。筆者準備了一篇小指南,解釋為什么不應該在Python中使用分號,并列出了少數特殊情況。

語句終止符

 

[[331088]]

 

 

圖源:unsplash

 

在許多大眾的編程語言中,需要在每個語句的末尾添加分號。例如,在C ++中:

  1. int c =10
  2. int a = 5;printf('In C++, semicolon at the end is must'); 

但Python并非如此。Python是一種簡潔的編程語言,你不需要添加不必要的字符和語法。在Python中,一條語句結束于一行的結尾(方括號,引號或括號除外)。例如:

  1. c = 10 
  2. a = 5print('No semicolons in Python') 

語句分隔符

Python中的分號表示分隔,而不是終止。它允許在同一行中編寫多個語句。

  1. print('Statement1'); print('Statement 2'); print('Statement 3') 

此語法允許在單個語句的末尾加上分號:

  1. print('WhyGod? WHY?'); 

該語句表示print('...'),然后在下一句終止。因此它實際上是兩個語句,其中第二個為空。即使該語言允許使用分號分隔語句,但大多數Python程序員都不會在其代碼中使用它。

 

[[331089]]

 

 

圖源:unsplash

 

Python應該是清晰可讀的。分號之類的語法字符會導致不必要的混亂。如果將這樣的代碼發送給經驗豐富的Python程序員,他可能不會再理你了。

  1. temp =10cold =False
  2.               if temp<15: print('It is cold'); cold =True; print('Another statement') 
  3.           print(cold); print('Done'); 

將多條語句強制放在一行上會使原本簡單的代碼難以閱讀。

何時使用分號?

那么問題來了,既然分號既不美觀又礙事,為什么Python中允許使用分號?

筆者認為,這是為了使兩種編程語言之間的轉換變得稍微容易一些。具有Java,C ++和PHP背景的程序員習慣性地將(無用的)終止符放在每一行的末尾。

但是,在下列這些情況下,分號也會派上用場:

從Shell運行腳本

最常見的一種情況是使用python-c' <script> '從shell運行一個簡短的腳本。因為不能在此處使用縮進,所以需要鍵入許多用分號分隔的表達式。以下面語句為例:

  1. python-c 'import math; t = math.pi;print(int(t))’ 

另一個用例是exec語句:

  1. exec('fori in [100,200,300]: print(i);print(i*2)') 

評估表達式的副作用

[[331090]]

圖源:unsplash

在Jupyter Notebook之類的交互式環境中工作時,最后一個表達式返回的值將以字符串形式輸出。評估某個函數的副作用真的會很煩人,在matplotlib中查看這個問題會產生贅余。

筆者將在JupyterNotebook中創建一個簡單的直方圖。如下圖所示,運行此腳本會在輸出時添加多余的一行:Text(0.5,1.0,'Histogram')。

被“嫌棄”的分號的一生:不要在Python中使用無用分號了

這實際上是調用.set_title(...)函數的返回值。為了抑制輸出,可以在最后一條語句的末尾添加一個分號:

  1. axis.set_title('Histogram',size=10); 

簡潔就是偉大,我們在編寫代碼時應避免添加任何多余的字符。刪掉那些多余的分號吧,僅在必要時使用即可。

 

責任編輯:趙寧寧 來源: 讀芯術
相關推薦

2023-09-27 10:19:37

類型video函數

2015-04-23 08:51:53

2022-08-10 14:36:05

Python循環函數

2021-09-28 08:05:56

黑客網絡安全網絡攻擊

2019-04-15 14:05:56

MySQLUTF-8數據庫

2021-03-29 08:05:15

User項目安全

2021-03-06 22:21:58

分號代碼 語言

2023-08-31 09:10:18

JavaScript調試

2015-08-03 09:33:21

PH程序員一生

2023-01-10 08:20:55

RocketMQ消息源碼

2018-07-16 16:29:26

編程函數代碼

2021-10-18 10:53:26

Go 代碼技術

2020-06-04 08:10:30

Python字符串開發

2022-07-29 16:39:02

PHP編程語言

2016-08-24 11:13:30

2009-07-20 18:03:26

Scala程序Singleton對象

2020-07-09 17:37:47

Linux網絡包中斷

2018-01-18 09:05:05

存儲數據包分層

2021-08-06 22:43:54

中斷架構傳遞

2021-06-10 10:03:19

數據中心IT設備
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美一区二区三区四区 | 亚洲一区中文字幕 | 波多野结衣一二三区 | 日韩欧美在线视频 | 一级毛片在线播放 | 成人在线视频网站 | 日韩国产精品一区二区三区 | 在线资源视频 | 中文字幕 国产 | 欧美在线| 精品久久国产 | 久久精品国产一区二区三区 | 成年人黄色一级片 | 日本不卡一区 | 日韩在线免费视频 | 日韩成人一区 | 国产伦一区二区三区视频 | 午夜国产精品视频 | 天天操天天操 | 久久久久久看片 | 日韩av免费在线观看 | 中文字幕视频在线 | 国产三级精品三级在线观看四季网 | 久久综合久久久 | 久久黄色 | 欧美性视频在线播放 | 国产毛片视频 | 国产高清免费视频 | 高清国产午夜精品久久久久久 | 国产精品亚洲精品日韩已方 | 欧美日韩在线一区二区 | 亚洲一区二区三区在线免费观看 | 国产精品久久久久久久久久久久久久 | 中文字幕日韩欧美 | 久久在视频 | 91久久精 | 国产欧美日韩综合精品一 | av在线成人 | 91视频久久久久 | 日本久久一区二区三区 | 韩国av网站在线观看 |