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

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

新規登録して質問してみよう
ただいま回答率
85.38%
関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

Raspberry Pi

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

Python

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

Q&A

3回答

1109閲覧

Raspberry Pi4、Pythonを使ってLED3つをランダム関数の値に当てはまる条件で光らせたい。

takahiro_sinsi

総合スコア0

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

Raspberry Pi

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

Python

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

0グッド

0クリップ

投稿2022/05/22 16:11

はじめまして、この質問をご覧いただきありがとうございます。
Raspberry Pi4とPythonを触り始めて数日の者です。質問の内容が初歩的過ぎて本当に申し訳ないのですが、自分で調べ学んでみても問題を解決できず、この度このサイトにて質問をせて頂くことに致しました。
本題ですがPythonを使ってLED(赤・黄色・緑)の3つをランダム関数の値に当てはまる条件によって光らせたいです。

恐らくそもそものPythonの書き方が間違っているような気がしますし、他力本願になってしまい自分でも悔しいのですが、どうしても解決に至れませんでした。
ご回答の程よろしくお願いいたします。

Python

1#!usr/bin/env python3 2 3from random import random 4from secrets import randbelow 5 6import RPi.GPIO as GPIO #RPI.GPIOモジュールを使用 7import sys 8 9 10x = random.randint(0,7) 11 12list = [x] 13 14args = sys.argv 15 16gpio_led = 23 17gpio_yellow = 18 18gpio_green = 25 19 20GPIO.setmode(GPIO.BCM) #GPIOのモードを"GPIO.BCM"に設定 21GPIO.setup(gpio_led, GPIO.OUT) #GPIO25を出力モードに設定 22GPIO.setup(gpio_yellow, GPIO.OUT) #GPIO23を出力モードに設定 23GPIO.setup(gpio_green, GPIO.OUT) #GPIO18を出力モードに設定 24 25#if文でLEDの店頭を変える 26if(list[7] == 7): 27 GPIO.output(gpio_led, GPIO.HIGH) 28 GPIO.output(gpio_yellow, GPIO.HIGH) 29 GPIO.output(gpio_green, GPIO.HIGH) 30elif(args[6] == 6): 31 GPIO.output(gpio_led, GPIO.LOW) 32 GPIO.output(gpio_yellow, GPIO.HIGH) 33 GPIO.output(gpio_green, GPIO.HIGH) 34elif(args[5] == 5): 35 GPIO.output(gpio_led, GPIO.HIGH) 36 GPIO.output(gpio_yellow, GPIO.HIGH) 37 GPIO.output(gpio_green, GPIO.LOW) 38elif(args[4] == 4): 39 GPIO.output(gpio_led, GPIO.LOW) 40 GPIO.output(gpio_yellow, GPIO.HIGH) 41 GPIO.output(gpio_green, GPIO.LOW) 42elif(args[3] == 3): 43 GPIO.output(gpio_led, GPIO.LOW) 44 GPIO.output(gpio_yellow, GPIO.LOW) 45 GPIO.output(gpio_green, GPIO.LOW) 46elif(args[2] == 2): 47 GPIO.output(gpio_led, GPIO.LOW) 48 GPIO.output(gpio_yellow, GPIO.LOW) 49 GPIO.output(gpio_green, GPIO.HIGH) 50elif(args[1] == 1): 51 GPIO.output(gpio_led, GPIO.HIGH) 52 GPIO.output(gpio_yellow, GPIO.LOW) 53 GPIO.output(gpio_green, GPIO.LOW) 54elif(args[0] == 0): 55 GPIO.output(gpio_led, GPIO.LOW) 56 GPIO.output(gpio_yellow, GPIO.LOW) 57 GPIO.output(gpio_green, GPIO.LOW) 58 59GPIO.cleanup()

イメージ説明
イメージ説明

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

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

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

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

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

guest

回答3

0

もしかして、random.pyってファイルがそこにありませんか

投稿2022/05/23 00:38

y_waiwai

総合スコア88010

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

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

0

Pythonあんまり詳しくないけど、from random import randomってのがどういう意味かを確認したほうがよさそうな気がします。

投稿2022/05/22 21:59

thkana

総合スコア7695

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

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

0

python

1from random import random

↓ 変更

python

1import random

 
または

python

1from random import random 2#中略 3x = random.randint(0,7)

↓ 変更

python

1from random import randint 2#中略 3x = randint(0,7)

投稿2022/05/22 21:59

編集2022/05/23 01:55
jbpb0

総合スコア7653

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.38%

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

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

質問する

関連した質問