<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 練習 Theano 的 Scan Function
Step1:  撰寫一個 A 的 K 次計算函式
[0 1 2 3 4 5 6 7 8 9 ] >>> [  0.   1.   4.   9.  16.  25.  36.  49.  64.  81.] 
k 為 integer ，代表多少次方
a 為 底
Step2:  result 為用 tensor 來接
update 為利用 theano.scan 所產生 funciton description，白話的說就是 "利用函式來產出函式"
<ASSISTANT_TASK:>
Python Code:
import theano
import theano.tensor as T
Explanation: 練習 Theano 的 Scan Function
End of explanation
k = T.iscalar('K')
a = T.vector('A')
i = T.vector('A')
result, updates = theano.scan(fn=lambda pre , k : pre*a , 
                    outputs_info = i,
                    non_sequences=a,
                    n_steps = k
                   )
Explanation: 撰寫一個 A 的 K 次計算函式
[0 1 2 3 4 5 6 7 8 9 ] >>> [  0.   1.   4.   9.  16.  25.  36.  49.  64.  81.] 
k 為 integer ，代表多少次方
a 為 底
End of explanation
print result
print updates
final_result = result[-1]
power = theano.function(inputs=[a,k,i],outputs=[final_result],updates=updates)
print(power(range(10),2,[10]*10))
Explanation: result 為用 tensor 來接
update 為利用 theano.scan 所產生 funciton description，白話的說就是 "利用函式來產出函式"
End of explanation
<END_TASK>