Apparemment, lorsqu'on travaille dans une usine, il peut être difficile de savoir où et combien de personnes se trouvent. Dans ce cas, même si la machine s'arrête, il semble qu'il n'est pas possible de savoir si elle s'est arrêtée par manque de personnel ou si la machine s'est arrêtée en raison d'une anomalie. Alors, visualisons facilement où et combien de personnes se trouvent dans l'usine.
Exprimons la disposition initiale de l'usine dans une disposition en deux dimensions. Il l'écrit également dans un fichier csv (data.csv) afin que vous puissiez le modifier ultérieurement.
init_map.py
import csv
landmap = [[0 for i in range(21)] for j in range(5)]
for i,line in enumerate(landmap):
print(str(i) + ":", end="")
for area in line:
print(area, end="")
print()
with open('data.csv', 'w') as f:
writer = csv.writer(f)
writer.writerows(landmap)
#Résultat d'exécution
0:000000000000000000000
1:000000000000000000000
2:000000000000000000000
3:000000000000000000000
4:000000000000000000000
L'image est que les travailleurs le feront sur leurs smartphones lorsqu'ils arriveront sur les lieux avant de commencer le travail à l'usine. Tout d'abord, lisez data.csv sous forme de valeur numérique. Demandez aux travailleurs d'utiliser l'entrée standard pour entrer où ils commenceront à travailler (comme Aiue avec ce code). Créez une fonction qui incrémente le nombre de personnes à l'endroit que vous avez entré. Utilisez la fonction pour exécuter le processus. Enfin, écrivez ce contenu traité dans data.csv et mettez à jour data.csv.
start_arran.py
landmap=[list(map(int,line.rstrip().split(","))) for line in open('data.csv').readlines()]
import csv
a = input('Où es-tu')
def start_where(s):
if 'UNE' in s:
landmap[0][0] +=1
elif 'je' in s:
landmap[0][5] +=1
elif 'C' in s:
landmap[0][10] +=1
elif 'ré' in s:
landmap[0][15] +=1
elif 'Oh' in s:
landmap[0][20] +=1
elif 'Puissance' in s:
landmap[2][0] +=1
elif 'Ki' in s:
landmap[2][5] +=1
elif 'Ku' in s:
landmap[2][10] +=1
elif 'Ke' in s:
landmap[2][15] +=1
elif 'Ko' in s:
landmap[2][20] +=1
elif 'Un service' in s:
landmap[4][0] +=1
elif 'Shi' in s:
landmap[4][5] +=1
elif 'Su' in s:
landmap[4][10] +=1
elif 'Se' in s:
landmap[4][15] +=1
elif 'Alors' in s:
landmap[4][20] +=1
else:
print('error')
start_where(a)
for i,line in enumerate(landmap):
print(str(i) + ":", end="")
for area in line:
print(area, end="")
print()
with open('data.csv', 'w') as f:
writer = csv.writer(f)
writer.writerows(landmap)
#Résultat d'exécution
Où es-tu
0:000000000000000000000
1:000000000000000000000
2:000000000000000000000
3:000000000000000000000
4:000000000000000000001
Où es-tu
0:100000000000000000000
1:000000000000000000000
2:000000000000000000000
3:000000000000000000000
4:000000000000000000001
Où es-tu
0:100000000000000000000
1:000000000000000000000
2:000000000010000000000
3:000000000000000000000
4:000000000000000000001
Dans une usine, nous déplaçons parfois le placement, et à cause de cela, nous pouvons ne pas savoir où et combien de personnes sont placées, nous allons donc réfléchir à ce qu'il faut faire lorsque nous déménagerons le lieu. Diminuez le nombre de personnes à l'endroit où vous vous trouviez de -1 et augmentez le nombre de personnes dans le lieu nouvellement déplacé de +1.
move.py
landmap=[list(map(int,line.rstrip().split(","))) for line in open('data.csv').readlines()]
import csv
a = input('Où es-tu?')
b = input('Où allez-vous')
def now_where(s):
if 'UNE' in s:
landmap[0][0] -=1
elif 'je' in s:
landmap[0][5] -=1
elif 'C' in s:
landmap[0][10] -=1
elif 'ré' in s:
landmap[0][15] -=1
elif 'Oh' in s:
landmap[0][20] -=1
elif 'Puissance' in s:
landmap[2][0] -=1
elif 'Ki' in s:
landmap[2][5] -=1
elif 'Ku' in s:
landmap[2][10] -=1
elif 'Ke' in s:
landmap[2][15] -=1
elif 'Ko' in s:
landmap[2][20] -=1
elif 'Un service' in s:
landmap[4][0] -=1
elif 'Shi' in s:
landmap[4][5] -=1
elif 'Su' in s:
landmap[4][10] -=1
elif 'Se' in s:
landmap[4][15] -=1
elif 'Alors' in s:
landmap[4][20] -=1
else:
print('error')
def move(s):
if 'UNE' in s:
landmap[0][0] +=1
elif 'je' in s:
landmap[0][5] +=1
elif 'C' in s:
landmap[0][10] +=1
elif 'ré' in s:
landmap[0][15] +=1
elif 'Oh' in s:
landmap[0][20] +=1
elif 'Puissance' in s:
landmap[2][0] +=1
elif 'Ki' in s:
landmap[2][5] +=1
elif 'Ku' in s:
landmap[2][10] +=1
elif 'Ke' in s:
landmap[2][15] +=1
elif 'Ko' in s:
landmap[2][20] +=1
elif 'Un service' in s:
landmap[4][0] +=1
elif 'Shi' in s:
landmap[4][5] +=1
elif 'Su' in s:
landmap[4][10] +=1
elif 'Se' in s:
landmap[4][15] +=1
elif 'Alors' in s:
landmap[4][20] +=1
else:
print('error')
now_where(a)
move(b)
for i,line in enumerate(landmap):
print(str(i) + ":", end="")
for area in line:
print(area, end="")
print()
with open('data.csv', 'w') as f:
writer = csv.writer(f)
writer.writerows(landmap)
#Résultat d'exécution
Où es-tu? UNE
Où allez-vous Ko
0:000000000000000000000
1:000000000000000000000
2:000000000010000000001
3:000000000000000000000
4:000000000000000000001
C'est un code très simple et sale, mais j'ai dessiné un programme qui vous permet de savoir où et combien de personnes se trouvent dans l'usine.
Chaque capacité du travailleur est résumée dans Excel, etc. en 5 étapes à l'avance, et comme la position de A nécessite un total de N capacités de hoge, M. A et M. B sont automatiquement attribués. En conséquence, si le nombre de personnes est insuffisant et qu'une alerte apparaît, il serait intéressant de créer un algorithme qui change automatiquement les effectifs en augmentant la capacité requise du lieu de + N.
Recommended Posts