- 運営しているクリエイター
2022年2月の記事一覧
pythonちょっとTips 文字
文字の取り扱いについてちょっと記録。以下参考サイト
文字は文字コードと呼ばれる数字が割り振られていて、UTF8でエンコーディングがデフォルト。str型オブジェクト。
これ便利。
print("It's easy to learn Python")
こんな感じで両方使える。
エスケープシーケンス
ダブルクオート シングルクオートをそのまま表示させる。
改行
などなど、他にもいろいろあ
アルゴリズム?プログラミング。 - 挿入ソート
挿入ソート、insertion sortです。
左端(0番目)をまず整列済として処理は1番目の数字から処理していきます。
選択ソートでは左端の数字を最小の数字にして整列済にします。一度決めたら変更しません。リスト全体から最小の数字を探してから左端に追加します。
最小、最小、・・・
と繋がっていきます。
挿入ソートは左端の数字は整列済として処理しますが、比較する数字はリスト全体ではなく、整列済
アルゴリズム?プログラミング。 - 選択ソート
選択ソート(selection sort)は
リストは最初は未整列で、順番に整列していきます。今回は左端から小さい数字から順番に並ぶようにしていき、左端から整列済としていくようにコードを書いていきます。
まずリスト
num = [8,4,1,5,3]
があるとすれば、まず整列済としたい数字は"8"ということになります。
最初はこの"8"を基準に考えていきます。
この"8"ですが、このリ
アルゴリズム?プログラミング。 - バブルソート
バブルソートは最も単純なソート、並び替え方法としていろんなところで紹介されています。
仕組みは隣の値(数字)と比べてもし順番に並んでいなければ入れ替えるというものです。たくさんの値があれば順番に比較、入れ替えを行って最終的に並び替えができるというものです。Colabで試しながらやっていきます。
基本は
a = 5b = 3print(a,b)if a > b: a,b = b,apri
アルゴリズム?プログラミング。 - 探そう!2分探索
順番に並んだリストの中から目的の数字を探すアルゴリズムです。
考え方としては、
真ん中の値ではない場合は
コードで確かめていきます。
array = [3,7,8,10,12,25]
このリストから
serch = 12
"12"を探します。
まずリストの範囲、リストの左はしのインデックスと右はしのインデックスを調べます。
左はし(left)は"0"で決まりですが、右はし(rig
アルゴリズム?プログラミング。 - 探そう!線形探索
検索対象のものの中全て総当たりで探す方法。今回は数字がたくさん入っているリストの中から探す数字を一つずつ照らし合わせてもし、探している数字と同じであれば、検索終了。とします。
単純に繰り返し、一つずつ数字を取り出して調べていきます。繰り返しと言えば、for in ループですのでこれを使いコードを書いていきます。
単純にループを使って一つずつ探す方法。
arr = [6,2,1,9,5]
こ
アルゴリズム?プログラミング。 - 入れ替えよう!
あるデータが2つあるとします。リストで作っています。
arr = ["Tro","Hanako"]
今並びは"Tro"が先で"Hanako"があとになっています。
この順番を入れ替えてみましょう。
入れ替える前にリストの値の取り方を復習します。
arr = ["Tro","Hanako"]print(arr[0])print(arr[1])
を実行します。
と出力されます。
arr
アルゴリズム?プログラミング。 - 探そう!
いろんな数字が入っているリストを作って、その中で一番大きい数字を探してみます。
例えば
array = [3,1,7,2,5]
というリストがあって、一番大きい数字を探してみます。
単純に一つずつ数字を取り出して比べていきます。数字を取り出す方法はfor inループを使います。
リストそのまま
for i in array: print(i)
として実行すると、3 1 7 2
アルゴリズム?プログラミング。 - 計算?アルゴリズム?
計算してみましょう。手順を考えながらコードを書いていきます。
合計
欲しいのは合計なのでそれが入る変数を作ります。
sum = 0
合計というのは数字を連続的に足していくのでForループが使えそうです。
for i in range(3): sum = sum + i
range(3)で0から2までの範囲を指定しています。"i"は順番に"0,1,2"数字が入っていきます。
合計
Pythonでストップウォッチ
参考サイトを見ながら時間の取得、ストップウオッチをテキストベースで作っていきます。
テキストベースということでColabで実行していきます。
まずは時間の取得から。一番簡単なのは
import timenowTime = time.time()print(nowTime)
1644148424.3030994
と何だかわからない数字がでてきます。
これでも時間の経過を計算するときには使
アルゴリズム?プログラミング。 - なんかいでも!
何かをするときには間違いが必ずあります。間違えれば違うやり方でまたやれば良いです。そうやって繰り返すうちに正しいところへ行き着きます。繰り返しはプログラミンづにとってはすごく大事な考え方です。繰り返しの動作をさせる命令がループという処理です。
Pythonでは
for in ループ
という形です。リストの場所にはrange()などで数字、回数を指定することもできます。
While
条件に