Python学习笔记实战篇

推荐链接

1.python仓库:https://www.lfd.uci.edu/~gohlke/pythonlibs/

1.python 控制台输出的内容保存到txt 文件

import sys
class Logger(object):
    def __init__(self, filename='default.log', stream=sys.stdout):
	    self.terminal = stream
	    self.log = open(filename, 'a')

    def write(self, message):
	    self.terminal.write(message)
	    self.log.write(message)

    def flush(self):
	    pass

sys.stdout = Logger(a.log, sys.stdout)
sys.stderr = Logger(a.log_file, sys.stderr)		# redirect std err, if necessary

# now it works
print ('print something')

  更详细方法参考:https://blog.csdn.net/u010158659/article/details/81671901

2.eval函数使用

eval(str, globals = None, locals = None)函数:将字符串str当成有效的表达式来求值并返回计算结果。

-globals参数必须是dictionary。

-locals参数必须是map。若同时设置,则参数由局部——全局——内置的顺序查找。


>>#计算表达式 >>eval('2+2') 4 >>#执行函数 >>eval('pow(2,2)') 4 >>#globals指定 >>ball = 10 >>balls = {'ball':6} >>print(eval("ball+1",balls)) 7 >>#locals指定 >>w = 10 >>e = 8 >>s = 2 >>n = 1 >>dir = {'w':3,'s':9} >>dir2 = {'s':11,'n':15} >>print(eval('w+s+n',dir,dir2)) 29

使用一:用于string、dictionary、list、tuple对象之间的转换


>>A = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" >>b = eval(A) >>b [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]] >>#利用引号进行反转 >>A = [1,2,3] >>type('A') str >>type(eval('A')) list

使用二:调用函数


>>m = 'pow' >>M = eval(m) >>M(2,2) 4
posted @ 2020-03-10 18:03  Caoer199  阅读(192)  评论(0编辑  收藏  举报