【问题标题】:concatenating variables into one large variable with python用python将变量连接成一个大变量
【发布时间】:2017-02-15 20:22:18
【问题描述】:

我在 python 中有以下程序,它应该从数组中打印值。

import sys
from datetime import *
import pprint
txtfile=sys.argv[1]
f = open(txtfile,'r')
lines=f.readlines()
f.close

for line in lines:
    col = line.split(',')
    wrow=[]
    grid=[]

    lon=int(round(float(col[0]),0))
    lat=int(round(float(col[1]),0))
    val=float(col[2])
    my_tuple=(lon,lat,val)
    wrow.append(my_tuple)

    if(len(wrow)==720):
        row = wrow[0:] + wrow[:720]
        grid.append(row)
        wrow=[]
        row=[]

    if(len(grid)==360):
          grid.reverse()
         for row in grid:
            string=''
            i=1
            for mytuple in row:
                 print "count is ",i
                 val=str(mytuple[2])
                 print "val is ",val
                 #string = string + val + '\t'
                 #print "string is ",string
                 i=i+1
                 if(i==4):
                     print "****************************"
                     string = string + val + '\t'
                     #print string
                     #string = string + '\n'
                     i=1
                 else:
                     string = string + '\n'
                     #print string
          #pprint.pprint(grid)
          grid=[]
          wrow=[]



exit()

这个程序的输出看起来像这样:

****************************
count is  1
val is  0.51
count is  2
val is  0.69
count is  3
val is  0.83
****************************
count is  1
val is  0.7
count is  2
val is 0.59
count is 3 
val is 0.93
*****************************

现在我想设置 python 脚本,使我有一个连接所有变量 val 的变量字符串。因此我有:

print "***************************"
print string

我会得到输出:

*******************************
0.51 0.69 0.83
*******************************
0.7 0.59 0.93

关于如何调整此脚本以执行此操作的任何想法?

【问题讨论】:

    标签: python string loops variables concatenation


    【解决方案1】:

    您必须执行某种循环或加入才能将它们全部放在同一行,但这还不错。我会做这样的事情:

    tuples = [(1, .51), (2, 0.69), (3, 0.83)]
    joined = " ".join([repr(x[1]) for x in tuples])
    print (joined)
    
    '0.51 0.69 0.83'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-20
      • 2014-10-03
      • 1970-01-01
      • 2020-06-30
      相关资源
      最近更新 更多