Python 程式來驗證郵政地址格式
假設我們有一個郵政編碼,我們必須檢查它是否有效。有效的郵政編碼具有以下標準
它必須是介於 100000 到 999999 之間的數字(包括兩端)
它不能包含多個交替重複的數字對
所以,如果輸入像 s = "700035" 一樣,那麼輸出將為 True,因為這在 100000 到 999999 的範圍內,也沒有連續的數字
為了解決這個問題,我們將按照以下步驟操作 -
- n := s 的大小
- nb := 0
- ok := True
- 對於 i 從 0 到 n - 1,執行
- ok := ok 且 s[i] 是數字,則
- 對於 i 從 0 到 n-3,執行
- nb := nb + (1 當 s[i] 與 s[i+2] 相同時,否則 0)
- 返回 (True 當 ok 為 true 且 n 與 6 相同時且 s[0] 與 '0' 不同時且 nb < 2),否則返回 False
示例
讓我們看看以下實現以更好地理解
def solve(s): n = len(s) nb = 0 ok = True for i in range(n): ok = ok and s[i].isdigit() for i in range(n-2): nb += s[i] == s[i+2] return ok and n == 6 and s[0] != '0' and nb < 2 s = "700035" print(solve(s))
輸入
"700035"
輸出
True
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP