<p>我编写了以下python程序</p>
<pre><code>#! /usr/bin/python
def checkIndex(key):
if not isinstance(key, (int, long)): raise TypeError
if key<0: raise IndexError
class ArithmeticSequence:
def __init__(self, start=0, step=1):
self.start = start # Store the start value
self.step = step # Store the step value
self.changed = {} # No items have been modified
def __getitem__(self, key):
checkIndex(key)
try: return self.changed[key]
except KeyError:
return self.start + key*self.step
def __setitem__(self, key, value):
checkIndex(key)
self.changed[key] = value
</code></pre>
<p>这个项目是我的.py当我这么做的时候</p>
<pre><code>chmod +x my.py
python my.py
</code></pre>
<p>在这一步之后,我又回到了bashshell
我打开一个Python壳</p>
<pre><code>user@ubuntu:~/python/$ python
Python 2.7.3 (default, Aug 1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> s=ArithmeticSequence(1,2)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'ArithmeticSequence' is not defined
</code></pre>
<p>我如何给我的程序输入并运行它,因为它保存在vi中</p>