我已经看过许多用于编写编程语言的教程,但很少用Python编写.我想知道如何(相对容易地)使用Python创建编程语言.
我正在尝试创建一个程序,它将启动视图窗口(控制台)和命令行.在视图窗口中,它将显示常量更新,而命令行窗口将用于raw_input()接受影响视图窗口的命令.我正在考虑使用线程,但我不知道如何在新的控制台窗口中启动线程.我该怎么办?
我已经设置了一个模拟操作系统的Python脚本.它有一个命令提示符和一个虚拟文件系统.我正在使用shelve模块来模拟文件系统,它是多维的,以支持目录层次结构.但是,我无法实现'cd'命令.我不知道如何进出目录,即使我在第一次启动程序时创建了一小组目录.这是我的代码:
import shelve
fs = shelve.open('filesystem.fs')
directory = 'root'
raw_dir = None
est_dir = None
def install(fs):
fs['System'] = {}
fs['Users'] = {}
username = raw_input('What do you want your username to be? ')
fs['Users'][username] = {}
try:
test = fs['runbefore']
del test
except:
fs['runbefore'] = None
install(fs)
def ls(args):
print 'Contents of directory', directory + ':'
if raw_dir:
for i in fs[raw_dir[0]][raw_dir[1]][raw_dir[2]][raw_dir[3]]:
print i
else:
for i in fs:
print i
def cd(args):
if len(args.split()) > 1:
if args.split()[1] …Run Code Online (Sandbox Code Playgroud) 有没有办法改变对象在Python解释器中显示时的显示方式?例如:
>>> test = myobject(2)
>>> test
'I am 2'
Run Code Online (Sandbox Code Playgroud)
要么
>>> test = myobject(2)
>>> test
myobject(2)
Run Code Online (Sandbox Code Playgroud)