<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            習題 19: 函數和變量?

            函數這個概念也許承載了太多的信息量,不過別擔心。只要堅持做這些練習,對照上個練習中的檢查點檢查一遍這次的聯系,你最終會明白這些內容的。

            有一個你可能沒有注意到的細節,我們現在強調一下:函數里邊的變量和腳本里邊的變量之間是沒有連接的。下面的這個練習可以讓你對這一點有更多的思考:

             1
             2
             3
             4
             5
             6
             7
             8
             9
            10
            11
            12
            13
            14
            15
            16
            17
            18
            19
            20
            21
            22
            23
            24
            def cheese_and_crackers(cheese_count, boxes_of_crackers):
                print "You have %d cheeses!" % cheese_count
                print "You have %d boxes of crackers!" % boxes_of_crackers
                print "Man that's enough for a party!"
                print "Get a blanket.\n"
            
            
            print "We can just give the function numbers directly:"
            cheese_and_crackers(20, 30)
            
            
            print "OR, we can use variables from our script:"
            amount_of_cheese = 10
            amount_of_crackers = 50
            
            cheese_and_crackers(amount_of_cheese, amount_of_crackers)
            
            
            print "We can even do math inside too:"
            cheese_and_crackers(10 + 20, 5 + 6)
            
            
            print "And we can combine the two, variables and math:"
            cheese_and_crackers(amount_of_cheese + 100, amount_of_crackers + 1000)
            

            通過這個練習,你看到我們給我們的函數 cheese_and_crackers 很多的參數,然后在函數里把它們打印出來。我們可以在函數里用變量名,我們可以在函數里做運算,我們甚至可以將變量和運算結合起來。

            從一方面來說,函數的參數和我們的生成變量時用的 = 賦值符類似。事實上,如果一個物件你可以用 = 將其命名,你通常也可以將其作為參數傳遞給一個函數。

            你應該看到的結果?

            你應該研究一下腳本的輸出,和你想象的結果對比一下看有什么不同。

            $ python ex19.py
            We can just give the function numbers directly:
            You have 20 cheeses!
            You have 30 boxes of crackers!
            Man that's enough for a party!
            Get a blanket.
            
            OR, we can use variables from our script:
            You have 10 cheeses!
            You have 50 boxes of crackers!
            Man that's enough for a party!
            Get a blanket.
            
            We can even do math inside too:
            You have 30 cheeses!
            You have 11 boxes of crackers!
            Man that's enough for a party!
            Get a blanket.
            
            And we can combine the two, variables and math:
            You have 110 cheeses!
            You have 1050 boxes of crackers!
            Man that's enough for a party!
            Get a blanket.
            $
            

            加分習題?

            1. 倒著將腳本讀完,在每一行上面添加一行注解,說明這行的作用。
            2. 從最后一行開始,倒著閱讀每一行,讀出所有的重要字符來。
            3. 自己編至少一個函數出來,然后用10種方法運行這個函數。

            Project Versions

            Table Of Contents

            Previous topic

            習題 18: 命名、變量、代碼、函數

            Next topic

            習題 20: 函數和文件

            This Page

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线