使用水平方向python

问题描述

我有一个.txt文件,看起来像这样: txt file example

我想制作一个.csv文件,在第一行中将写入名称(键,值),并在其下写入每个名称的值。应该是这样的: csv file example

解决方法

尝试一下:

import csv

k = ['0.0','0.25','0.5','0.75','1.0','1.25']
v = [5,46,597,2882,5398,4]

with open("output.csv",'w') as file:
    wr = csv.writer(file)
    wr.writerow(["keys","values"])
    for row in zip(k,v):
        wr.writerow(row)

.csv文件的输出:

keys,values
0.0,5
0.25,46
0.5,597
0.75,2882
1.0,5398
1.25,4

编辑:这是您显示的文件中示例数据的有效代码(即完全破解)。我正在按原样进行解析,因此如果数据更改,您可能必须编辑代码。

data.txt的内容:

keys(['0.0','10.0','20.0','30.0'])
values([43430,156,3,1])

代码:

import ast
import csv
import re

p = re.compile(r"\((.*)\)")

with open("data.txt") as f:
    data = f.readlines()

parsed = [
    ast.literal_eval(
        ''.join(i for i in re.search(p,l.strip()).groups())
    ) for l in data
]


with open("output.csv","values"])
    for row in zip(*parsed):
        wr.writerow(row)

output.csv文件的内容。

keys,43430
10.0,156
20.0,3
30.0,1

,

由于txt文件在导入后为两行,因此显示为字符串,所以这就是我要做的事情

var userProperties = PropertiesService.getUserProperties();

const TOKEN_OLD = 'api.token_old';

function onOpen(){
  
  SpreadsheetApp.getUi()
  .createMenu('CREDENZIALI')
  .addItem('Imposta TOKEN','setToken')
  .addToUi();
}

function setToken(){
  var ui = SpreadsheetApp.getUi();
  var scriptValue = ui.prompt('Per favore inserisci il token.',ui.ButtonSet.OK);
  userProperties.setProperty(TOKEN_OLD,scriptValue.getResponseText());
}