2019年11月13日水曜日

python,golangで英単語アプリを作りました

英単語アプリをpython,goで作りました

pythonは2,3時間でできたと思います
goは2日かかりました(死ぬかと思った)
goのせいではなく配列(slice)の基本を理解できてないからだと思います
 python eitango.py 
go run eitango.go list.csv

3秒毎に英単語、訳が出ます

辞書の例
list.csv
cousin,いとこ
cattle,牛
pollution,汚染
officer,役員
canal,運河
atmosphere,雰囲気
courage,勇気

eitango.py
import csv
import time
import random

data=[]
with open("list.csv","r") as f:
    reader = csv.reader(f)
    for row in reader:
        data.append(row)


while True:
    random.shuffle(data)
    print(data[0][0])
    time.sleep(3)
    print(data[0][1])
    time.sleep(2)

eitango.go
package main

import (
        "encoding/csv"
        "fmt"
        "io"
        "os"
                "math/rand"
                "time"
)
func main() {

        var fp *os.File
        if len(os.Args) < 2 {
                fp = os.Stdin
        } else {
                var err error
                fp, err = os.Open(os.Args[1])
                if err != nil {
                        panic(err)
                }
                defer fp.Close()
        }

        reader := csv.NewReader(fp)
        reader.Comma = ','
        reader.LazyQuotes = true
                var sli [][]string
        for {
                record, err := reader.Read()
                if err == io.EOF {
                        break
                } else if err != nil {
                        panic(err)
                }
                                sli = append(sli,record)
                               
}
for {
                  rand.Seed(time.Now().UnixNano())
    ii :=rand.Intn(5)
  time.Sleep(3*time.Second)
  fmt.Println(sli[ii][0])
  time.Sleep(3*time.Second)
     fmt.Println(sli[ii][1])
    }
}




不思議寺縁起2019年8月2日更新 
プログラム(ゲーム中心)置き場2019年9月5日更新
 Blender作品置き場      2017年2月19日更新

0 件のコメント:

コメントを投稿