IoTと無線ネットワーク(7)

前言

授業中で寝ちゃった

やる気なくなちゃった

IoT知識

SOAとAPI指向アーキテクチャとは何か?

python

pythonプログラミング(7)

一、モジュール

1.組み込みモジュールのインポート

2.mathモジュールのインポートと実行例

  • 定数

    iot5

  • sqrt

    iot5

  • 三角関数

    iot5

3.組み込みモジュールの使用例

  • random

    rondom.randint (n, m) n から m の間の整数 型乱数を返す関数

    iot5

  • statistics

    iot5

  • keyword

    iot5

二、ファイル入出力

1.ファイルパス

  • os.path.join( path, *path ) 1つまたはそれ以上のファイルパスの構成要素を結合 する関数

  • 様々なOSに対応

    iot5

2.open関数とcloseメソッド

  • アクセスモード指定

    • r 読み込み専用

    • w 書き込み専用

    • w+ 読み書き可

    iot5

3.日本語文字列を書き込む場合

  • encoding: 変換方式を指定

    iot5

4.ファイルを自動的に閉じる

  • プログラムのコードが全て実行された後でファイルが 自動的に閉じられる

    iot5

  • 実行後の読み込み実行例

    iot5

5.ファイルのコンテンツをlistに格納

iot5

6.csvファイルへの書き込み

iot5

7.csvファイルからの読み込み

iot5

演習課題

演習課題1

iot5

import csv

with open("st.csv","w",newline="") as f:
    write=csv.writer(f,delimiter=",")
    write.writerow([0,1,2,3,4,5,6,7,8,9])
    write.writerow([1,1,2,3,4,5,6,7,8,9])
    write.writerow([2,2,4,6,8,10,12,14,16,18])
    write.writerow([3,3,6,9,12,15,18,21,24,27])
    write.writerow([4,4,8,12,16,20,24,28,32,36])
    write.writerow([5,5,10,15,20,25,30,35,40,45])
    write.writerow([6,6,12,18,24,30,36,42,48,54])
    write.writerow([7,7,14,21,28,35,42,49,56,63])
    write.writerow([8,8,16,24,32,40,48,56,64,72])
    write.writerow([9,9,18,27,36,45,54,63,72,81])

import csv

with open("st.csv","r") as f:
    r=csv.reader(f,delimiter=",")
    for row in r:
        print(",".join(row))

# 0,1,2,3,4,5,6,7,8,9
# 1,1,2,3,4,5,6,7,8,9
# 2,2,4,6,8,10,12,14,16,18
# 3,3,6,9,12,15,18,21,24,27
# 4,4,8,12,16,20,24,28,32,36
# 5,5,10,15,20,25,30,35,40,45
# 6,6,12,18,24,30,36,42,48,54
# 7,7,14,21,28,35,42,49,56,63
# 8,8,16,24,32,40,48,56,64,72
# 9,9,18,27,36,45,54,63,72,81

演習課題2

iot5

iot5

import csv

with open("st2.csv","r") as f:
    r=csv.reader(f,delimiter=",")
    data = []
    for line in r:
        line = [int(c) if c != "" else 0 for c in line ]
        data.append(line)

print(data)

# [[0, 6, 0, 0, 0, 1, 0, 0, 2], 
#  [0, 9, 0, 0, 0, 0, 0, 5, 0], 
#  [0, 0, 0, 4, 7, 0, 9, 0, 0],
#  [8, 0, 0, 0, 1, 4, 5, 0, 0],
#  [0, 0, 2, 0, 0, 0, 0, 0, 0], 
#  [0, 0, 0, 9, 0, 0, 8, 0, 7], 
#  [0, 0, 8, 0, 0, 6, 3, 1, 0],
#  [4, 0, 6, 0, 2, 0, 0, 0, 0],
#  [0, 0, 0, 0, 0, 0, 2, 0, 0]]

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注