Python:计算值并发送电子邮件

时间:2018-09-25 05:12:32

标签: python python-3.x python-2.7 python-requests

更新:我已经更正了我的代码,以下内容按预期工作正常

基本上,我在邮件中需要以下输出。 我做到了。但是需要知道是否有低于此的有效代码。

名称5001 5010 9000 4%

名称5002 5010 9000 4%

名称5003 5010 9000 4%

名称5004 5010 9000 4%

  1. 将值存储在列表中。

下面是虚拟值

container = []
for server in range(1,5):
    container.append('name')
    container.append(server + 5000)
    container.append(5000+10)
    container.append(4000+5000)
    container.append(2500 % 12)

    print('\n' + str(container))
  1. 将值列表分配给msgBody以便通过电子邮件发送它

我只是在这里放一段代码。下面也很好用

msgBody1 =''

对于范围(4)中的计数:

if count == 0:
    tempValue = '\n' + '\n' + str(container[count]) + '\t' + str(container[count+1]) + '\t' + str(container[count+2]) + '\t' 
    + str(container[count+3]) + '\t' + str(container[count+4])
    msgBody1 = msgBody1 + str(tempValue) + ' %'


elif count == 1:
    tempValue = '\n' + '\n' + str(container[count+4]) + '\t' + str(container[count+5]) + '\t' + str(container[count+6]) + '\t' 
    + str(container[count+7]) + '\t' + str(container[count+8])
    msgBody1 = msgBody1 + str(tempValue) + ' %'


elif count == 2:
    tempValue = '\n' + '\n' + str(container[count+8]) + '\t' + str(container[count+9]) + '\t' + str(container[count+10]) + '\t' 
    + str(container[count+11]) + '\t' + str(container[count+12])
    msgBody1 = msgBody1 + str(tempValue) + ' %'


elif count == 3:
    tempValue = '\n' + '\n' + str(container[count+12]) + '\t' + str(container[count+13]) + '\t' + str(container[count+14]) + '\t' 
    + str(container[count+15]) + '\t' + str(container[count+16])
    msgBody1 = msgBody1 + str(tempValue) + ' %'

还有其他更好,更短的代码可以替代msgBody1

预先感谢

1 个答案:

答案 0 :(得分:1)

您的问题不清楚;该代码示例没有任何意义。但是从结构上看,您似乎在尝试使用dict,但您正在定义或采购列表。

不确定为什么for server in servers,希望您的服务器列表是数字值的集合,这没有任何意义。

请仔细阅读列表Vs dict,list.append()以及如何向字典添加新的键,值对。