かべぎわブログ

技術的なことについてかけたらいいな…

Pythonでエラトステネスの篩を実装してみる

概要 Python3でエラトステネスの篩を実装してみたいと思います。 エラトステネスの篩とは? エラトステネスの篩 (エラトステネスのふるい、英: Sieve of Eratosthenes) は、指定された整数以下の全ての素数を発見するための単純なアルゴリズムである。古代ギ…

Pythonで関数の中に関数を宣言してクロージャとしてつかってみる

概要 Pythonでは関数の中に関数を宣言するとそれはクロージャとして動作します。 ためしにやってみます。 スクリプト例 以下のようにouter()という関数の中でinner()という関数を宣言しています。 そしてreturnでinnerの関数そのものを返しています。 def ou…

Pythonで関数の引数に**をつかって複数個の値を辞書形式の引数としてわたす

概要 Pythonの関数の引数のところに**をつかって複数個の値を辞書形式の引数としてわたしてあげて関数を実行してみたいと思います。 スクリプト例 こんなかんじで関数の変数の部分に**変数といったかんじで指定をしてあげる。 def wawawa(**kwargs): print(k…

Pythonで関数の引数に*をつかって複数個の値を引数としてわたす

概要 Pythonの関数の引数のところに*をつかって複数個の値を引数としてわたしてあげて関数を実行してみたいと思います。 スクリプト例 こんなかんじで関数の変数の部分に*変数といったかんじで指定をしてあげる。 def wawawa(*args): print(args) print(args…

PythonでNone/True/Falseを区別を判定する

概要 PythonでNoneとTrueとFalseを判定してみます。 スクリプト例 実際に動かしてみる このスクリプトを動かしてみます。 wawawa = None の場合 当然結果はNoneになる。 $ ./bool_none.py None wawawa = 1 の場合 elif wawawa:でTrueになる。 0以上の数値ま…

Ansibleでstep実行をしてみる

概要 Ansibleでステップ実行してplaybookのタスクを確認しながら実行してみたいと思います。 やってみる たとえばこんなかんじのplaybookがあるとします。 - hosts: localhost gather_facts: false tasks: - name: "saisyo" debug: msg: "wawawa" - name: "t…

Pythonで単語の中のアルファベットの個数を数えてみる

概要 Pythonをつかってある単語の中のアルファベットの個数を数えてみたいと思います。 スクリプト例1 たとえばwasabiという単語に利用されるアルファベットの個数を調べてみます。 こんなかんじでcount()をつかうことでその単語の文字を数えることができま…

Pythonの配列の内包表記を使ってみる

Pythonで配列の内包表記を使ってみようと思います。 1~10の数値の配列をつくる 0~9の数値の配列をつくる 1~10のなかで奇数の数値の配列をつくる 1~10のなかで偶数の数値の配列をつくる 1~10の数値の配列をつくる >>> wawawa_array = [i for i in range(1,11)…

【Python】forのループの中でzip()をつかって複数のシーケンスを並列で処理する

概要 Pythonのforループの中でzip()をつかって複数の配列のシーケンスを並列に回してみたいと思います。 スクリプト例 たとえば以下のようなかんじのスクリプトを書いてみます。 wawawa_arrayとsasasa_arrayという2つの配列があり、それをforループで回して…

【Python】elseをつかってループの途中でbreakしているかどうか判定する

書いている内容自体はどちらもおなじ。 配列の中にある特定の値が含まれているかどうかを判定している。 以下の例だといずれもbreakしていないという文言がprintされる。 このようにelseをつかうことで値が見つかった場合/見つからなかった場合を変数などに…

Pythonで特定の数値の間かどうか判定するif文を書く

概要 Pythonを利用してある特定の数値の範囲の間にあるのかどうかを判定知るif文をかいてみようと思います。 スクリプト例 こんなかんじにすると数値がある特定の範囲の場合だけをifで判定することができる。 if 3 < x < 10: print('wawawa') これは以下とお…

Pythonで辞書形式をつかってみる

辞書形式とは? 辞書をつくる 二次元配列を辞書形式に変換する 辞書に新たなキーを追加する 辞書から指定したキーを削除する 辞書の要素をすべて削除する 辞書のすべてのキーを取得する 辞書のすべての値を取得する 辞書のキーと値すべてを取得する 辞書形式…

Pythonで配列を降順でソートする

概要 Pythonの配列を降順でソートしてみます。 降順でソートする方法 たとえば前提としてこんなかんじの配列があるとする。 wawawa_array = ['BBB','AAA','CCC'] sort(reverse=true)をつかうと降順でソートをすることができる。 >>> wawawa_array.sort(rever…

Pythonで配列の中の要素を確認する3つの方法

Pythonで配列の中に特定の要素がはいているのかや、それが何個入っているのかなどを確認する方法3つをご紹介します。 index()で要素の位置を確認する inで要素が存在するか確認する count()で要素の個数を計算する 前提として以下のような配列があるとする。…

Pythonで配列の要素を削除する方法3つ

delで削除する remove()で削除する pop()で削除する Pythonで配列の要素を削除する方法を3つご紹介します。 delで削除する >>>wawawa_array = ['AAA','BBB','CCC'] >>> del wawawa_array[0] >>> print(wawawa_array) ['BBB','CCC'] remove()で削除する >>> w…

Pythonで2次元配列を使う

概要 Pythonで2次元配列を使ってみようと思います。 コマンド例 こんなかんじで2次元配列を使うことができる。 2次元配列の宣言 wawawa_array = ['AAA','BBB'] sasasa_array = ['CCC','DDD','EEE'] nijigen_array = [wawawa_array,sasasa_array] nijigen_arr…

AnsibleでSystemdに新規サービスを追加する

概要 AnsibleをつかってSystemdに新規サービスを追加して、それを有効化して起動してみたいと思います。 playbook例 ちょっとした解説 以下のようなことをやっている。 wawawa.serviceというunitファイルをターゲットにコピーする。 daemon reloadする wawaw…

Pythonでlist()をつかって文字列やタプルを配列に変換する

概要 Pythonのlist()をつかって文字列やタプルを配列に変換してみたいと思います。 文字列を配列に変換 単純にlist()のなかに文字列をつっこんであげるだけ。 wawawa = list('wawawa') するとこんなかんじの配列が出来上がる。 ['w', 'a', 'w', 'a', 'w', 'a…

tailコマンドでn行目以降を取得する

概要 tailコマンドを利用してn行目以降を取得してみたいと思います。 コマンド例 たとえばwawawa.txtが以下のようだとする。 $ cat wawawa.txt AAA BBB CCC DDD EEE 以下コマンドを実行するとwawawa.txtの3行目以降を取得することができる。 $ tail -n +3 wa…

Pythonの空のリストを作る方法2つ

概要 Pythonで空のリストを作る方法を2つご紹介します。 [] を代入する list_wawawa = [] list() をつかう list_sasasa = list() おわりに 2つあるよ 入門 Python 3作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日: 2015/…

IT系のステッカー詰め合わせをAmazonで買ってみた

IT系というかなんというかWebサービスというかプログラミング言語というかなんかこうMacbookに貼っていたらイケてるエンジニアみあふれられそうなステッカーの詰め合わせをAmazonで買ってみた。 これを買った 50枚いりで519円なり Zontor 50pcsクールな漫画…

rc.localが実行できないときは実行権限を与えてあげる

概要 Linuxの起動時にrc.localに記載したコマンドが実行されていなかった。 そんなときの対処法です!!! 対処法 /etc/rc.d/rc.localに実行権限を与えてあげる。 デフォルトだと以下のように実行権限がない。 このままだとrc.localになにを書いてあげても実…

Pythonでの大文字小文字変換いろいろまとめ

Pythonでの大文字小文字変換をご紹介します!!!!!! 小文字を大文字に変換する 大文字を小文字に変換する 先頭文字だけ大文字にする すべての単語の先頭文字を大文字にする 大文字と小文字を逆転させる 小文字を大文字に変換する upper()を利用します。 …

Pythonのfindで特定の文字列がどこにあるか調べる

概要 Pythonを利用して特定の文字列がどこにあるのかどうか調べてみます。 スクリプト例 寿限無をもとに特定の文字列がどこにあるのか調べてみます。 寿限無はこんなかんじ。 こんなかんじで変数jugemに入力されているとする。 jugem = '''寿限無、寿限無 五…

Pythonで文字列を反転させて出力する

概要 Pythonをつかって文字列を反転させて出力させてみます。 たとえるならLinuxコマンドのrevみたいな。 スクリプト例 mojiretsu = 'ABCDEFG' print(mojiretsu[::-1]) 実行するとこんな感じで反転して出力してくれる。 $ ./rev.py GFEDCBA ちょっとした説明…

Pythonで文字列を*で繰り返してみる

概要 知らなかったのでメモ。 Pythonでは文字列を* 3などで繰り返すことができる。 例えばこんなかんじ name = 'wa' * 3 これをprintするとwawawaと出力される。 おわりに すばやくwawawaと出力したいときに便利 Pythonチュートリアル 第3版作者: Guido van …

シェルスクリプトで奇数偶数を判定する

概要 シェルスクリプトでその数字が奇数なのか偶数なのかを判定してみたいと思います。 スクリプト 実行してみる $ ./odd_even.sh 3 奇数だよ $ ./odd_even.sh 4 偶数だよ おわりに おわりだよ 入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界…

Pythonで変数に複数行の文字列を代入する

概要 Pythonで変数に複数行の文字列を代入する方法を2種類ご紹介します。 改行コードをつかう 単純に改行コードである\nを文字列の中に入れてあげる。 kaigyou_code = 'かべぎわブログは\nいいぞ' print(kaigyou_code) こんなかんじで出力される かべぎわブ…

Pythonで2進数,8進数,16進数をつかう

10進数 2進数 8進数 16進数 Pythonで2進数と8進数、16進数をつかってみます。 10進数 10進数の場合は普通にそのままでよい。 # 10進数 print(10) # 10が出力される 2進数 2進数の場合は数字の前に0bをつけてあげればよい。 # 2進数 print(0b10) # 2が出力さ…

【Python】divmodで商と剰余を一気に取得する

概要 Pythonをつかって割り算の答えとそのあまりを一気に取得してみます。 divmodをつかいます。 コマンド例 divmod(被除数,除数)です。 以下の例だと10 / 3の結果を変数resultに入れてくれます。 result = divmod(10,3) print(result) 実行してみる 10 /3 =…