2016-03-03 82 views
1

我試圖做一個輸入變量的簡單聲明整數聲明一個變量,但我收到一個錯誤:通過Zapier輸入在Python

Bargle。我們遇到了一個創建運行python的錯誤。 :-(錯誤: 您的代碼有錯誤!Traceback(最近一次調用最後一次):文件「/tmp/tmpXq4aAP/usercode.py」,第7行,在函數num = int(輸入['managers'])KeyError: '民'

以下是我使用的代碼:

num = int(input['num']) 

if num >= 100 : 
    big_num = true 
else: 
    big_num = false 

return {'big_num': big_num} 

回答

2

在Zapier,代碼:

input['varname']

指的是在 「代碼由Zapier」 操作傳遞的變量。

您聽到的錯誤聽起來像您在代碼之前沒有定義num變量。

此外,TrueFalse需要大寫。

否則,下面看到的,這種設置工程...

enter image description here

num = int(input['num']) 

if num >= 100 : 
    big_num = True 
else: 
    big_num = False 

return {'big_num': big_num} 
3

你的錯誤就在這裏:

num = int(input['num']) 

更改這些方括號圓括號:

num = int(input('num')) 

如果你在Python 2裏,你應該使用raw_input

num = int(raw_input('num')) 
+0

新錯誤: 您的代碼有錯誤! Traceback(最近一次調用的最後一個):文件「/tmp/tmpMfNcV0/usercode.py」,第7行,在the_function num = int(input('num'))中TypeError:'dict'對象不可調用 – csakon

+0

Python的哪個版本你在使用什麼,你準確輸入什麼 – idjaw

+0

根據Zapier,環境是香草Python 2.7.10。它基本上是通過源應用程序將數據轉換爲其他應用程序的代碼轉換。在這裏看到他們的頁面 - https://zapier.com/help/code-python/ – csakon

0

輸入是一個內核方法,它不能被標化,有一個語法錯誤,修改代碼,喜歡這個。

num = int(input('num')) 
+0

新錯誤: 您的代碼出錯了! Traceback(最近一次調用最後一次):文件「/tmp/tmpMfNcV0/usercode.py」,第7行,in_function num = int(input('num'))TypeError:'dict'對象不可調用 – csakon

+0

哪個版本的python您正在使用? –

1

許多這些答案引用input()建成 - 我們覆蓋在代碼由Zapier(因爲它確實使零感覺有自動腳本的用戶輸入)。它的地方是由上面的一些字段定義的字典。

對於不熟悉Zapier環境的人來說,這絕對是令人困惑的 - 我們將重新命名它,並將input構建爲零。

0

在Zapier,轉換輸入數據的正確方法(每輸入一個代碼步驟是一個String)爲整數如下:

num = int(input.get('num')) 

num = int(input['num']) 

如果數量達到附帶一個小數,在轉換爲整數之前從字符串中去除不需要的字符。對於像80這樣的數字。0這看起來像:

num = int(input['num'][:-2])