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

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

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

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

2821閲覧

raspberry piの実行結果のファイルへの保存

jake0228

総合スコア16

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/07/30 22:36

編集2021/07/31 03:30

raspberry pi で環境センサーを使っています。enviro+というセンサーを利用して以下のプログラムを実行します。その際、24時間のデータを収集したいと思っております。すべてのデータを自動でファイルに出力させることができればと願っています。ターミナル上では10分ほどしか記録が残らないため、ターミナルからコピーすることができません。
実行結果のファイルへの記録の方法を教えていただけますでしょうか。どうぞ宜しくお願い致します。

python3

1#!/usr/bin/env python3 2 3import time 4from bme280 import BME280 5 6try: 7 from smbus2 import SMBus 8except ImportError: 9 from smbus import SMBus 10 11import logging 12 13logging.basicConfig( 14 format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s', 15 level=logging.INFO, 16 datefmt='%Y-%m-%d %H:%M:%S') 17 18logging.info("""weather.py - Print readings from the BME280 weather sensor. 19 20Press Ctrl+C to exit! 21 22""") 23 24bus = SMBus(1) 25bme280 = BME280(i2c_dev=bus) 26 27while True: 28 temperature = bme280.get_temperature() 29 pressure = bme280.get_pressure() 30 humidity = bme280.get_humidity() 31 logging.info("""Temperature: {:05.2f} *C 32Pressure: {:05.2f} hPa 33Relative humidity: {:05.2f} % 34""".format(temperature, pressure, humidity)) 35 time.sleep(1)

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

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

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

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

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

y_waiwai

2021/07/30 22:58

このままではコードが読めないので、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
jake0228

2021/07/30 23:08

ありがとうございます。プログラムを修正いたしました。
jbpb0

2021/07/31 03:17

pythonのコードの一番最初の行のすぐ上に ```python だけの行を追加してください また、pythonのコードの一番最後の行のすぐ下に ``` だけの行を追加してください
jake0228

2021/07/31 03:19

修正をいたしました。 これでよろしいでしょうか。
jbpb0

2021/07/31 03:27 編集

まだダメです たぶん現状は ```python3 コード ``` となってると思うのですが、上記「コード」を削除して、その代わりにPythonのコードを全部そこに入れるのです
jake0228

2021/07/31 03:30

ありがとうございます。 修正をいたしました。 これでいかがでしょうか。
jbpb0

2021/07/31 03:34

大丈夫です
jake0228

2021/07/31 03:37

このプログラムの結果をファイルに保存してくことはできますでしょうか。 また、google spreadsheetに送付することもできればと願っております。 ご教授いただけますでしょうか。
jbpb0

2021/07/31 03:52

> データを10分ごとに追記させていく とは、質問のコードの最後の > time.sleep(1) の数値を増やす、ということですか?
jake0228

2021/07/31 03:55

このプログラムを実施すると、結果がターミナルに表示されます。しかし、10分間のみが表示され、それ以前は消えてしまうため、計測したすべての結果をコピーすることができません。 計測した結果をすべてファイルに保存できればと願っています。 10分ごとではなくても、保存する方法があればと思っております。
jake0228

2021/07/31 04:12

ありがとうございます。 参考にさせていただきます。
jake0228

2021/07/31 06:03

ご助言ありがとうございます。 logging.basicConfig(filename='example.log', encoding='utf-8', level=logging.DEBUG) 上記のコードを追加することでファイルを作成し、保存することができました。しかし、このコードを追加した場合、ターミナルでの表示がされないようになっていまいました。解決策はあるでしょうか。
jbpb0

2021/07/31 06:07

質問には > すべてのデータを自動でファイルに出力させることができればと願っています。 としか書いてませんよね 必須な条件があるなら、後出ししないで書いてください
jake0228

2021/07/31 06:10

申し訳ございません。 それまでターミナルで表示されていたため、その点について記載できておりませんでした。
guest

回答3

0

ベストアンサー

投稿2021/08/15 10:45

jbpb0

総合スコア7651

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

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

0

import logging をしているということは、loggingを使いたいのでしょうが、loggerを作成していないので途中であきらめたのでしょうか。

【Python】loggingの正しい使い方あたりを参考にして完成させてみてはいかがでしょうか。

投稿2021/07/30 23:12

ppaul

総合スコア24666

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

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

jake0228

2021/07/30 23:14

ありがとうございます。 リンク先を参考にさせていただきます。
jake0228

2021/07/31 00:48

センサーによりデータを取得しております。 そのデータを10分ごとに追記させていくためには、上記のプログラムの場合、どこにどのように記入すればよいでしょうか。
jake0228

2021/07/31 06:04

ありがとうございます。 logging.basicConfig(filename='example.log', encoding='utf-8', level=logging.DEBUG) を追加することで解決することができました。 ただし、追加する前はターミナルに結果の表示があったのですが、それがなくなり、ターミナルにはなにも表示されないようになってしまいました。解決策はあるでしょうか。
guest

0

ターミナルに出力しているなら、リダイレクトという機能でファイルに記録することができます
これでぐぐればやりかたでてきます

投稿2021/07/30 22:39

y_waiwai

総合スコア87774

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

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

jake0228

2021/07/30 23:09

ありがとうございます。 ぐぐってみます。
jake0228

2021/07/30 23:16

リンクを教えてくださりありがとうございます。 参考にさせていただきます。
jake0228

2021/07/30 23:30

計測が繰り返されるようにしております。 それを常にファイルに書き込ませるということは可能でしょうか。
y_waiwai

2021/07/30 23:36

>> でファイルに追記ができますよ
jake0228

2021/07/31 00:45

10分ごとに測定値を追記できればと思っております。 上記のプログラムの場合、どのようにプログラムすればよいでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問