2017-02-11 77 views
2

在「Learn Python The Hard Way」的網站上有練習24,我不明白。以下是作者希望我寫下的代碼。「Learn Python The Hard Way」Ex24.py

print "Let's practice everything." 
print 'You\'d need to know \'bout escapes with \\ that do \n newlines and \t tabs.' 

poem = """ 
\tThe lovely world 
with logic so firmly planted 
cannot discern \n the needs of love 
nor comprehend passion from intuition 
and requires an explanation 
\n\t\twhere there is none. 
""" 

print "--------------" 
print poem 
print "--------------" 


five = 10 - 2 + 3 - 6 
print "This should be five: %s" % five 

def secret_formula(started): 
    jelly_beans = started * 500 
    jars = jelly_beans/1000 
    crates = jars/100 
    return jelly_beans, jars, crates 


start_point = 10000 
beans, jars, crates = secret_formula(start_point) 

print "With a starting point of: %d" % start_point 
print "We'd have %d beans, %d jars, and %d crates." % (beans, jars, crates) 

start_point = start_point/10 

print "We can also do that this way:" 
print "We'd have %d beans, %d jars, and %d crates." % secret_formula(start_point) 

這是結果:

$ python ex24.py 
Let's practice everything. 
You'd need to know 'bout escapes with \ that do 
newlines and tabs. 
-------------- 

     The lovely world 
with logic so firmly planted 
cannot discern 
the needs of love 
nor comprehend passion from intuition 
and requires an explanation 

       where there is none. 

-------------- 
This should be five: 5 
With a starting point of: 10000 
We'd have 5000000 beans, 5000 jars, and 50 crates. 
We can also do that this way: 
We'd have 500000 beans, 500 jars, and 5 crates. 

這是否意味着start_point變量替換功能的started變量?另外,函數的()括號中是否有變量的特定名稱?爲了澄清,在secretformula(started)中,started只是一個常規變量或具有單獨的名稱。對不起,如果這是顯而易見的(我是一個noob)。

+0

'started'是一個單獨的變量名,你可以選擇你想要的任何名字。在幕後發生的是,在調用'secret_formula'函數時'start_point'的值被分配給'started'變量。 – thiagowfx

+0

以前沒有關於功能的課程嗎? –

+0

請修正第一個代碼塊中的縮進,然後在第一行之後不需要縮進:) – shash678

回答

0

這是否意味着start_point變量替換了函數的「啓動」變量?

這就是參數的工作原理,是的。而是你會說,started被分配了值start_point

是有一種用於在功能

未中的代碼,沒有的()括號中的變量具有特定名稱。這個名字不僅提高了可讀性開發商

在「secretformula(開始)」,將「開始」僅僅是一個普通的變量或具有一個獨立的名字

這是在報價參數,它是一個變量secret_formula(start_point)

相關問題