質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Q&A

解決済

1回答

356閲覧

変数と文字列を混在してcsv出力したい。

k.horigome

総合スコア12

Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

0グッド

1クリップ

投稿2018/01/16 09:30

変数:GetV,GetAを [現在時間,GetV,GetA]の形で現在日時.csvに出力したいです。 現在時刻は文字列、GetVとGetAは変数(数値)です。 変数GetVとGetAをcsv = ([GetV(),GetA()])として f.write("'"+label+"',"+csv+"\n")に代入しましたが TypeError: cannot concatenate 'str' and 'list' objects となります。 コード

01 now = datetime.datetime.now()
02 filename = now.strftime('%Y%m%d')
03 label = now.strftime('%H:%M')
04 csv = ([GetV(),GetA()])
05
06 if not os.path.exists('/home/pi/ina226-data'):
07 os.makedirs('/home/pi/ina226-data')
08 f = open('/home/pi/ina226-data/'+filename+'.csv','a')
09 f.write("'"+label+"',"+csv+"\n")
10 f.close()
11
12 #with open('/home/pi/ina226-data/'+filename+'.csv','a')as f:
13 # writer=csv.writer(f)
14 # writer.writerow ([GetV(),GetA()])

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

原因

Python

1>>> 'a' + ['b', 'c'] 2Traceback (most recent call last): 3 File "<stdin>", line 1, in <module> 4TypeError: cannot concatenate 'str' and 'list' objects

解決策:愚直バージョン

このコードを見て考えてください。

Python

1>>> hoge = ['b', 'c'] 2>>> print hoge 3['b', 'c'] 4>>> type(hoge) 5<type 'list'> 6>>> 7>>> print ', '.join(hoge) 8b, c 9>>> type(', '.join(hoge)) 10<type 'str'>

解決策:スマートバージョン

str.formatを使うと便利ですよ。

Python

1>>> print "'{0}', {1}, {2}\n".format('a', *['b', 'c']) 2'a', b, c 3

投稿2018/01/16 09:47

編集2018/01/16 09:58
LouiS0616

総合スコア35660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

k.horigome

2018/01/16 10:04

早速のご教示ありがとうございます。 解決しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問