2016-10-02 7 views
0

数値の階乗を計算する関数がある場合、この関数を文字 '!'で呼び出すことができますか? ?Pythonで1文字の関数を呼び出す

基本的に、私は

In [1]: 5! 

を入力して受け取りたい:

120 

私はスパイダーIDEでのPython 3.5を使用しています。

+3

なし用にフォーマットこのコードに見える正確ではありません。新しい構文を追加するためにPythonを書き直さなければなりませんでした。 – furas

+0

いいえ、それは構文エラーです。 – zvone

+0

数値の階乗を計算する関数は、* number *を受け取る必要があります。 '! 'は、構文エラーを避けるために*文字列*(例えば' '5!" ')を使用する必要があることを意味します。 – ray

答えて

0

あなたはこのような何かを試すことができます。

from math import factorial 

input_string = "5!" 

def is_int(input_string): 
try: 
    int(input_string[:-1]) 
    return True 
except ValueError: 
    return False 

if input_string[-1] == "!" and is_int(input_string): 
print(factorial(int(input_string[:-1]))) 

これは、あなたがしたいが、それはあなたができない、最も近いようなソリューション のpython 2.7

関連する問題