普段の生活の中から大好きなパソコンや植物のことなどを書いています 最近ではyoutubeにも動画をアップしていますのでよかったらみてくださいませm(_ _)m https://www.youtube.com/user/xtoran1
python3で畑で使う施肥量計算機ちょっとつくってみた
#!/usr/bin/python
# -*- coding: utf-8 -*-
#施肥量計算
class Sehi:
def __init__(self,kg,N,P,K):
self.kg = kg
self.N = int(N)*10
self.P = int(P)*10
self.K = int(K)*10
def seibunryou(self):
seibunryou_N = int(self.kg) * int(self.N)
seibunryou_P = int(self.kg) * int(self.P)
seibunryou_K = int(self.kg) * int(self.K)
print("一袋あたり"+ "(N)"+ str(seibunryou_N)+"g"+"(P)"+str(seibunryou_P)+"g"+"(K)"+str(seibunryou_K)+"g")
#施肥データ
class Yasai:
def __init__(self,name,hasyu,uetsuke,sehin,sehip,sehik,oigoe):
self.name = name
self.hasyu = hasyu
self.uetsuke = uetsuke
self.sehin = sehin
self.sehip = sehip
self.sehik = sehik
self.oigoe = oigoe
def yasai_data_load(self):
print("******************************************")
print("品名: "+ self.name)
print("播種時期: "+ self.hasyu)
print("植え付け時期: "+ self.uetsuke)
print("施肥量(N)(kg/10a): "+ str(self.sehin))
print("施肥量(P)(kg/10a): "+ str(self.sehip))
print("施肥量(K)(kg/10a): "+ str(self.sehik))
print("追肥の目安(npk)(kg/10a): "+ self.oigoe)
def m_change(self):
mcn = int(self.sehin)/10
mcp = int(self.sehip)/10
mck = int(self.sehik)/10
print("******************************************")
print("1rあたりの施肥量は")
print("N: "+ str(mcn)+ "kg")
print("P: "+ str(mcp)+ "kg")
print("K: "+ str(mck)+ "kg")
kabocya = Yasai("かぼちゃ","3月下旬","4月下旬",15,15,15,"20 10 15")
kyuri = Yasai("きゅうり","5月上旬","5月下旬",30,30,30,"20 0 10")
suika = Yasai("すいか","4月中旬","6月中旬",10,10,10,"10 5 5")
meron = Yasai("メロン","3月上旬","4月上旬",15,20,15,"- - -")
tomato = Yasai("トマト","3月中旬","5月中旬",15,25,10,"15 0 10")
piman = Yasai("ピーマン","2月上旬","4月中旬",25,25,20,"20 20 15")
ichigonae = Yasai("イチゴ苗床","7月上旬","-",1,3,2,"(kg/a)")
ichigo = Yasai("イチゴ","7月上旬","9月上旬",15,20,20,"10 5 5")
nasu = Yasai("なす","3月上旬","5月中旬",30,30,30,"15 10 15")
okura = Yasai("オクラ","2月上旬","3月下旬",30,30,30,"15 10 15")
nira = Yasai("にら","12月上旬","4月上旬",12,25,15,"30 0 19")
miendou = Yasai("実えんどう","9月下旬","-",5,20,10,"10 0 5")
sayaendou = Yasai("さやえんどう","8月上旬","-",6,25,10,"7 0 9")
ingen = Yasai("いんげん","8月中旬","-",14,20,20,"0 0 0")
toumorokoshi = Yasai("とうもろこし","3月下旬","-",30,30,25,"6 0 7")
gobou = Yasai("ごぼう","3月上旬","-",14,25,16,"8 0 6")
rakkyou = Yasai("らっきょう","9月上旬","-",8,20,10,"5 0 5")
rifuretasu = Yasai("リーフレタス","9月下旬","10月下旬",20,20,20,"-")
kekkyuretasu = Yasai("結球レタス","7月下旬","8月下旬",25,25,25,"-")
daikonn = Yasai("大根","9月上旬","-",15,20,12,"10 0 10")
bareisyo = Yasai("じゃがいも","1月下旬","-",17,20,18,"8 0 0")
satoimo = Yasai("さといも","4月上旬","-",14,23,12,"6 0 8")
kansyo = Yasai("かんしょ","3月上旬(種芋定植)","5月上旬",5,12,15,"-")
ninjin = Yasai("にんじん","8月上旬","-",15,20,15,"5 0 5")
syouga = Yasai("しょうが","4月中旬","-",20,20,20,"10 10 10")
shishitou = Yasai("ししとうがらし","1月上旬","3月下旬",20,20,20,"25 15 15")
nigauri = Yasai("にがうり","3月下旬","4月下旬",20,16,20,"13 8 11")
burokkuri = Yasai("ブロッコリー","8月中旬","9月下旬",15,20,15,"10 5 10")
soramame = Yasai("そらまめ","8月上旬","10月上旬",15,15,15,"5 5 5")
kyabetsu = Yasai("キャベツ","9月下旬","11月上旬",15,15,15,"10 5 10")
hakusai = Yasai("はくさい","9月下旬","11月上旬",15,15,15,"10 5 10")
hourensou = Yasai("ほうれん草","9月上旬","-",10,10,10,"5 0 5")
syungiku = Yasai("春菊","8月下旬","-",15,15,10,"10 0 10")
konegi = Yasai("小ねぎ","4月上旬","-",15,10,15,"25 15 20")
tamanegi_ikubyou = Yasai("玉ねぎ(育苗)","-","-",0.5,0.5,0.5,"(kg/50m2)")
tamanegi = Yasai("玉ねぎ","9月上旬","10月下旬",15,20,15,"10 5 5")
sehidetas=[kabocya,kyuri,suika,meron,tomato,piman,ichigonae,ichigo,
nasu,okura,nira,miendou,sayaendou,ingen,toumorokoshi,gobou,
rakkyou,rifuretasu,kekkyuretasu,daikonn,bareisyo,satoimo,
kansyo,ninjin,syouga,shishitou,nigauri,burokkuri,soramame,
kyabetsu,hakusai,hourensou,syungiku,konegi,tamanegi_ikubyou,
tamanegi]
def yasainame():
print("施肥量データが選ばれました。野菜を選んでください。")
for i,v in enumerate(sehidetas):
print(i,v.name)
def yasai_sentaku():
print("**********************************************")
yasainum = input("野菜の番号を入力してください: ")
try:
sehidetas[int(yasainum)].yasai_data_load()
sehidetas[int(yasainum)].m_change()
print("**********************************************")
print("*元肥,追肥のデータだけです(堆きゅう肥,苦土石灰,よう燐は土壌状態に合わせ別途用意する必要があります)")
except IndexError:
print("選択範囲にない値です.")
yasai_sentaku()
#袋の総量及び成分含有率入力
def fukuro():
print("袋の成分量を計算します")
fukuro_kg = input("袋の総量を入力してください(kg): ")
fukuro_N = input("窒素含有率を入力してください(N): ")
fukuro_P = input("リン酸含有率を入力してください(P): ")
fukuro_K = input("カリ含有率を入力してください(K): ")
fukuro = Sehi(fukuro_kg,fukuro_N,fukuro_P,fukuro_K)
fukuro.seibunryou()
#メイン処理
syori = input("処理を選んでください: 1: 施肥量計算 2: 施肥量データ: ")
def hatake():
if syori == str(1):
fukuro()
input()
elif syori == str(2):
yasainame()
yasai_sentaku()
hatake()
input()
ソースに書いてあるとおり元肥,追肥のデータだけです(堆きゅう肥,苦土石灰,よう燐は土壌状態に合わせ別途用意する必要があります
あと播種期,定植期も一般的な露地物のものとしていますが(春夏二度のものもあります)
地域差.農業スタイルや気温によってもかわります
あくまで参考程度で...
自分の環境はlinuxです
ソースをメモ帳にコピペで名前にnpk.pyをつけて
実行権限をつけて同じ階層でpython npk.pyしてやってください
登録:
投稿 (Atom)
久しぶりの更新です 備忘録 使っているarchlinuxにnvidiaのドライバを入れたところドライバがあっていなかったのかxが起動せずこれをアンインストールしたがその後xf86-video-nouveauが入っているにもかかわらずxが起動しなくなったのでarchwikiにて調...
-
スプライトの座標確認と ウインドウの端についたら反対側から出てくるようにしてみた #!/usr/bin/python # -*- coding: utf-8 -*- import pyglet from pyglet.window import mouse f...
-
前のブログでのアクセスが一番多かった記事です(文字のみ) またアップしてみました 記事が古いので現在の仕様とことなる場合があるかもしれません AUTHOR: xtoran TITLE: lubuntuファイルマネージャーを管理者権限でたちあげてみた ...