J'aimerais écrire ce à quoi j'étais accro en tant que super débutant en Python.
J'ai touché Python pour la première fois quand j'ai touché Razzpie. Je suis donc un super débutant en python. J'ai écrit un programme qui combine une tarte à la râpe et un capteur à ultrasons pour lire un fichier audio à l'approche d'une certaine distance. Quant au contenu, la valeur (distance) réellement acquise était écrite dans un fichier journal et le fichier audio était lu lorsqu'il atteignait 80 cm ou moins.
Tout d'abord, exécutez manuellement la commande sur le fichier python! Lorsque j'ai rapproché ma main du capteur, il a exécuté le fichier audio normalement.
La prochaine fois que j'ai démarré Raspeye, je l'ai modifié pour exécuter automatiquement le fichier python. (Tâche simple d'ajouter des commandes à /etc/rc.local) Après avoir démarré Raspeye, ouvrez le fichier journal, vérifiez que le capteur fonctionne, puis approchez votre main du capteur, cette? Le fichier audio ne joue pas ... mais la valeur est de 80 cm ou moins ... que se passe-t-il ... En tant que débutant en programmation, j'étais un peu confus à ce stade.
À la suite de divers essais et erreurs, la cause était que le chemin pour spécifier le fichier python pour lire le fichier audio était écrit comme un chemin relatif.
· Changer avant
test.py
if (read_distance()) < 80:
check = subprocess.Popen(['python','music.py'])
print check
・ Après le changement
test.py
if (read_distance()) < 80:
check = subprocess.Popen(['python','/home/pi/music.py'])
print check
Jusqu'à présent, j'écrivais avec des chemins relatifs, donc j'écrivais sans le savoir avec des chemins relatifs. Si vous écrivez avec un chemin relatif, le répertoire de référence changera, il semble donc sûr d'écrire avec un chemin absolu.
Même avec une chose aussi simple, j'ai pensé l'écrire pour ne pas répéter la même erreur quand j'oubliais. Je pense que programmer dans un nouveau langage demande de la patience ...