class c(object):
def __call__(self, *args, **kwargs):
print “i’m callable! called with args:\n”,args
c = c()
c(‘a’,1)
single_code = compile(“print ‘hello,world!'”,”,’single’)
exec(single_code)
eval_code = compile(‘100*3′,”,’eval’)
print eval(eval_code)
#exec_code = compile(“””req = input(‘input:’)
#for eachnum in range(req):
# print eachnum”””,”,’exec’)
#exec(exec_code)
exec “””x = 0
print ‘x is currently:’,x
while x < 5:
x+=1
print 'incrementing x to:',x
"""
#f = open('c14.py')
#exec f
#print f.tell()
#print f.close()
#from os.path import getsize
#getsize('c14.py')
#f.seek(0)
#exec f
#loopmake
dashes = '\n' + '-' * 50
exec_dict = {
'f':"""
for %s in %s:
print %s
""",
's':"""
%s = 0
%s = %s
while %s < len(%s):
print %s[%s]
%s = %s + 1
""",
'n':"""
%s = %d
while %s < %d:
print %s
%s = %s + %d
"""
}
def main():
ltype = raw_input('loop type?[for/while]')
dtype = raw_input('data type?[number/seq]')
if dtype == 'n':
start = input('start value?:')
stop = input('ending value?:')
step = input('steping value?:')
seq = str(range(start,stop,step))
def foo():
return true
def bar():
'bar() does not much'
return true
foo.__doc__ = 'foo() does not much'
foo.tester = """
if foo():
print 'passed'
else:
print 'failed'
"""
for eachattr in dir():
obj = eval(eachattr)
if isinstance(obj,type(foo)):
if hasattr(obj,'__doc__'):
print '\nfunction "%s" has a doc string:\n\t%s' % (eachattr,obj.__doc__)
if hasattr(obj,'tester'):
print '\nfunction "%s" has tester' % eachattr
exec(obj.tester)
else:
print '%s function has no tester' % eachattr
else:
print '%s is not a function' % eachattr
import os
#print os.system('ping www.qq.com')
f = os.popen('dir')
data = f.readlines()
f.close()
print data
## 替换os.system
from subprocess import call
res = call(('dir'),shell=true)
## 替换os.popen
from subprocess import pipe,popen
f = popen(('wmic','diskdrive'),stdout=pipe).stdout
data = f.readlines()
f.close()
print data
import sys
def usage():
print 'at least 2 arguments'
print 'usage: args.py arg1 arg2 [arg3....]'
sys.exit(1)
argc = len(sys.argv)
#if argc < 3:
# usage()
prev_exit_func = getattr(sys,'exitfunc',none)
def my_exit_func(old_exit=prev_exit_func):
if old_exit is not none and callable(old_exit):
old_exit()
sys.exitfunc = my_exit_func
def my_exit():
print 'exit python'
sys.exitfunc = my_exit
print 'hello,begin exit.'
sys.exit(1)
以上就是python基础学习代码之执行环境的内容,更多相关内容请关注php中文网(www.php1.cn)!