書名: 零基礎入門學習Python(第2版)作者名: 小甲魚本章字數: 428字更新時間: 2019-12-20 12:19:31
3.3 原始字符串
看起來好像反斜杠是一個好東西,那不妨試試打印C:\now,代碼如下:
>>> string = 'C:\now' >>> string 'C:\now' >>> print(string) C: ow
打印結果并不是我們預期的,原因是反斜杠(\)和后邊的字符(n)恰好轉義之后構成了換行符(\n)。這時候有朋友可能會說,用反斜杠來轉義反斜杠不就可以啦。嗯,不錯,的確可以用反斜杠對自身進行轉義:
>>> string = 'C:\\now' >>> string 'C:\\now' >>> print(string) C:\now
但如果一個字符串中有很多個反斜杠,我們就不樂意了。畢竟,這不僅是一個苦差事,還可能使代碼變得混亂。
不過大家也不用怕,因為在Python里有一個快捷的方法,就是使用原始字符串。原始字符串的使用非常簡單,只需要在字符串前邊加一個英文字母r即可:
>>> string = r'C:\now' >>> string 'C:\\now' >>> print(string) C:\now
在使用字符串時需要注意的一點是:無論是否為原始字符串,都不能以反斜杠作為結尾(注:反斜杠放在字符串的末尾表示該字符串還沒有結束,換行繼續的意思,下一節會介紹)。如果堅持這樣做就會報錯:
>>> string = 'FishC\' SyntaxError: EOL while scanning string literal >>> string = r'FishC\' SyntaxError: EOL while scanning string literal
大家不妨考慮一下:如果非要在字符串的結尾加個反斜杠,有什么辦法可以來靈活實現呢?
推薦閱讀
- Instant Testing with CasperJS
- Building a Home Security System with Raspberry Pi
- Visual C
- Reactive Programming With Java 9
- Visual Basic程序設計實驗指導(第4版)
- Visual Basic程序設計
- Python極簡講義:一本書入門數據分析與機器學習
- 零基礎Java學習筆記
- Java Web開發就該這樣學
- Julia 1.0 Programming Complete Reference Guide
- Android應用開發深入學習實錄
- Everyday Data Structures
- Flink核心技術:源碼剖析與特性開發
- Spark技術內幕:深入解析Spark內核架構設計與實現原理
- Getting Started with JUCE