python原始字串

2021-06-17 17:39:36 字數 1026 閱讀 9573

那麼,我們如何設計程式來處理任意數量的時差? 答案是:使用萬用字元(wildcard urlpatterns)。正如我們之前提到過,乙個url模式就是乙個正規表示式。因此,這裡可以使用d+來匹配1個以上的數字。

4

urlpatterns = patterns('',

# ...

(r'^time/plus/\d+/$', hours_ahead),

# ...

)

這裡使用# …來表示省略了其它可能存在的url模式定義。 (見上)

這個url模式將匹配類似 /time/plus/2/ , /time/plus/25/ ,甚至 /time/plus/100000000000/ 的任何url。 更進一步,讓我們把它限制在最大允許99個小時, 這樣我們就只允許乙個或兩個數字,正規表示式的語法就是 \d :

(r'^time/plus/\d/$', hours_ahead),
備註

在建造web應用的時候,盡可能多考慮可能的資料輸入是很重要的,然後決定哪些我們可以接受。 在這裡我們就設定了99個小時的時間段限制。

另外乙個重點,正規表示式字串的開頭字母「r」。 它告訴python這是個原始字串,不需要處理裡面的反斜槓**義字元)。 在普通python字串中,反斜槓用於特殊字元的轉義。比如n轉義成乙個換行符。 當你用r把它標示為乙個原始字串後,python不再視其中的反斜槓為轉義字元。也就是說,「n」是兩個字串:「」和「n」。由於反斜槓在python**和正規表示式中有衝突,因此建議你在python定義正規表示式時都使用原始字串。 從現在開始,本文所有url模式都用原始字串。

6現在我們已經設計了乙個帶萬用字元的url,我們需要乙個方法把它傳遞到檢視函式裡去,這樣 我們只用乙個檢視函式就可以處理所有的時間段了。 我們使用圓括號把引數在url模式裡標識 出來。 在這個例子中,我們想要把這些數字作為引數,用圓括號把 \d 包圍起來:

1

(r'^time/plus/(\d)/$', hours_ahead),
如果你熟悉正規表示式,那麼你應該已經了解,正規表示式也是用圓括號來從文字裡 提取 資料的。

python 原始字串

prthon 反斜槓為轉義字元 str c now str c now print str syntaxerror invalid character u ff09 print c noe c oe 字串前加 r 為原始字元 str r c now a str c now a print str c...

python中原始字串解析

python原始字串是指在引號前新增 r 或 r 的字串,如 r hello 原始字串是為了解決ascii字元和正規表示式特殊字元間的衝突而產生的,但實際應用範圍可以更廣泛。其本質原理就是取消字串由輸入到讀入記憶體過程中ascii特殊字元的含義,使其按字面形式讀入記憶體。p r n p n prin...

原始字串 Unicode

原始字串以r開頭,可以在原始字串中放入任何字元,但不能以反斜線 結尾,用來防止反斜線轉義!在普通字串中,反斜線 會轉義,在字串中通常不能直接加入的內容。如 print c nowhere c owhere要輸出c nowhere,必須加反斜槓轉義。print c nowhere c nowhere ...