क्या कोई मौजूदा वेब ऐप है जो एकाधिक उपयोगकर्ताओं को एक बार इंटरैक्टिव आईडीएलई प्रकार सत्र के साथ काम करने देता है?पायथन: समान बैक-एंड का उपयोग करते समय नेटवर्क किए गए आईडीईएल/फिर से आईडीईई फ्रंट-एंड?
कुछ की तरह:
IDLE 2.6.4
Morgan: >>> letters = list("abcdefg")
Morgan: >>> # now, how would you iterate over letters?
Jack: >>> for char in letters:
print "char %s" % char
char a
char b
char c
char d
char e
char f
char g
Morgan: >>> # nice nice
यदि नहीं, तो मैं एक बनाने के लिए करना चाहते हैं। क्या कोई मॉड्यूल है जिसका उपयोग मैं कर सकता हूं जो एक इंटरैक्टिव सत्र को अनुकरण करता है? मैं इस तरह एक अंतरफलक चाहते हैं:
def class InteractiveSession():
''' An interactive Python session '''
def putLine(line):
''' Evaluates line '''
pass
def outputLines():
''' A list of all lines that have been output by the session '''
pass
def currentVars():
''' A dictionary of currently defined variables and their values '''
pass
(हालांकि कि पिछले समारोह एक अतिरिक्त सुविधा के और अधिक हो जाएगा।)
मेरी समस्या एक और तरीका है तैयार करने के लिए: मैं एक नया मोर्चा बनाना चाहते हैं आईडीएलई के लिए अंत। मैं यह कैसे कर सकता हूँ?
अद्यतन: या शायद मैं eval()
के माध्यम से आईडीईई अनुकरण कर सकता हूं?
अद्यतन 2: क्या होगा यदि मैं कुछ इस तरह किया:
मैं पहले से ही एक साधारण GAE अजगर चैट एप्लिकेशन की स्थापना की है, जिसकी सहायता से उपयोगकर्ता में साइन इन कमरों में चैट करते हैं, और साथ चैट कर सकते एक दूसरे।
के बजाय सिर्फ डेटासंग्रह को भेजे गए संदेशों की बचत, मैं कुछ इस तरह कर सकता है:
def putLine(line, user, chat_room):
''' Evaluates line for the session used by chat_room '''
# get the interactive session for this chat room
curr_vars = InteractiveSession.objects.where("chatRoom = %s" % chat_room).get()
result = eval(prepared_line, curr_vars.state, {})
curr_vars.state = curr_globals
curr_vars.lines.append((user, line))
if result:
curr_vars.lines.append(('SELF', result.__str__()))
curr_vars.put()
InteractiveSession मॉडल:
def class InteractiveSession(db.Model):
# a dictionary mapping variables to values
# it looks like GAE doesn't actually have a dictionary field, so what would be best to use here?
state = db.DictionaryProperty()
# a transcript of the session
#
# a list of tuples of the form (user, line_entered)
#
# looks something like:
#
# [('Morgan', '# hello'),
# ('Jack', 'x = []'),
# ('Morgan', 'x.append(1)'),
# ('Jack', 'x'),
# ('SELF', '[1]')]
lines = db.ListProperty()
इस काम कर सकता था
, या क्या मैं रास्ता बंद कर रहा हूं/यह दृष्टिकोण अक्षम है/मैं काम को डुप्लिकेट कर रहा हूं जब मुझे पहले से ही कुछ बनाया जाना चाहिए?
अद्यतन 3: इसके अलावा, मैं सब कुछ किसी और काम करके यह सोचते हैं, मैं वाक्य रचना हाइलाइटिंग चाहते हैं। आदर्श रूप से, मेरे पास कुछ एपीआई या सेवा होगी जिसका मैं उपयोग कर सकता हूं जो कोड को पार्स करेगा और इसे उचित तरीके से स्टाइल करेगा।
for c in "characters":
बन जाएगा:
<span class="keyword">for</span> <span class="var">c</span> <span class="keyword">in</span> <span class="string>"characters"</span><span class="punctuation">:</span>
वहाँ यह करने के लिए एक अच्छा मौजूदा अजगर उपकरण है?
बहुत ही रोचक विचार है, हालांकि मुझे आश्चर्य होगा कि ऐसा कुछ पहले से मौजूद है। –