應用Java正則表達式校驗郵箱與手機號。本站提示廣大學習愛好者:(應用Java正則表達式校驗郵箱與手機號)文章只能為提供參考,不一定能成為您想要的結果。以下是應用Java正則表達式校驗郵箱與手機號正文
本文實例剖析了Python感化域用法。分享給年夜家供年夜家參考,詳細以下:
每個編程說話都有變量的感化域的概念,Python也不破例,以下是Python感化域的代碼演示:
def scope_test(): def do_local(): spam = "local spam" def do_nonlocal(): nonlocal spam spam = "nonlocal spam" def do_global(): global spam spam = "global spam" spam = "test spam" do_local() print("After local assignment:", spam) do_nonlocal() print("After nonlocal assignment:", spam) do_global() print("After global assignment:", spam) scope_test() print("In global scope:", spam)
法式的輸入成果:
After local assignment: test spam After nonlocal assignment: nonlocal spam After global assignment: nonlocal spam In global scope: global spam
留意: local 賦值語句是沒法轉變 scope_test 的 spam 綁定。 nonlocal 賦值語句轉變了 scope_test 的 spam 綁定,而且 global 賦值語句從模塊級轉變了 spam 綁定。
個中,nonlocal是Python 3新增的症結字。
你也能夠看到在 global 賦值語句之前對 spam 是沒有事後綁定的。
小結:
碰到在法式中拜訪全局變量而且要修正全局變量的值的情形可使用:global症結字,在函數中聲明此變量是全局變量
nonlocal症結字用來在函數或其他感化域中應用外層(非全局)變量。
global症結字很好懂得,其他說話年夜體也如斯。這裡再舉一個nonlocal的例子:
def make_counter(): count = 0 def counter(): nonlocal count count += 1 return count return counter def make_counter_test(): mc = make_counter() print(mc()) print(mc()) print(mc())
運轉成果:
1 2 3
轉自:小談博客 http://www.tantengvip.com/2015/05/python-scope/
願望本文所述對年夜家Python法式設計有所贊助。