2020-01-01から1年間の記事一覧
こんにちは。家族が増えて、そろそろライフプランを考えなきゃなーと思い、 エクセルでライフプラン表を作ってみたりしてます。そんなときに使えるかもしれない、年齢付き年表自動作成ツールをpythonで作りました。こんなウィンドウがでてきて、名前と生年月…
こんにちは。Pythonを使えるようになって職場復帰後に楽をしたい!って思いはあるのに なかなかやる気が出ない。そこで、 PyQというPythonに特化したオンライン学習を始めてみました。始めたのは実は2020/10/41か月ぐらい継続しております。スクレイピング…
お久しぶりです。 安定期に入り、つわりも落ち着き、プログラミングの勉強を再開しました。 職場復帰した時に役に立つもの作れないかな~と思い、 職場でよく使っていた系統図をもっと簡単に作れればいいなーと、ご無沙汰だったエクセルVBAをいじいじ。 系統…
ご無沙汰しております。 しばらくブログの更新ストップしてました。 その理由は 二人目妊娠によるつわり!眠気! 妊娠前のやる気がうそのよう。 もう何もする気が起きず、 1歳の娘の育児だけで精一杯。 勉強なんて無理~状態です。 つわりも少し収まってき…
過去問コーディング。 今回の問題は、簡易メモ帳プログラムです。過去問PDF「出典:平成28年度 春期 基本情報技術者試験 午後 問8」プログラム #グローバル変数を定義 MemoCnt = 0 MemoMax = 5 Memo = ['']*MemoMax #リストが空だと要素番号で値を入れること…
過去問コーディング。 今回の問題は、数値の編集プログラムです。過去問PDF「出典:平成28年度 秋期 基本情報技術者試験 午後 問8」プログラム def edit(Pattern,Value): #上書きするために、リスト型のPatternを作っておく Pattern_l = list(Pattern) fill …
過去問コーディング。 今回の問題は、最短経路と最短距離の探索プログラムです。過去問PDF「出典:平成29年度 春期 基本情報技術者試験 午後 問8」プログラム #配列Distanceを作成する(愚直に作ったけどもっといい方法ありそう) Distance = [[0,2,8,4,-1,-1,…
過去問コーディング。 今回の問題は、文字列の誤りを検出するプログラムです。過去問PDF「出典:平成29年度 秋期 基本情報技術者試験 午後 問8」プログラム #表1の文字と数値の辞書を生成 char_dict = {'_':0,'.':1,',':2,'?':3} for i,c in enumerate(range…
過去問コーディング。 今回の問題は、整数式の解析と計算のアルゴリズムです。過去問PDF「出典:平成30年度 秋期 基本情報技術者試験 午後 問8」 プログラム def compute(Expression): ExpLen = len(Expression) #プログラム(解析処理の部分) Operator =[]…
前回からアルゴリズム過去問のコーディングをやっておりまして 私のレベルでコーディングが一日でできるわけがなく 以前のように毎日記事をアップすることができなくなりました。 これからはのんびりペースです。さて、今回はハフマン符号化を用いた文字列圧…
【26日目】Pythonの基本文法に慣れてきた今日この頃。そろそろ参考書外で何か作ってみようと思い、 基本情報技術者試験の試験勉強も兼ねて 最も苦手とするアルゴリズムの過去問をPythonで書いてみました! Pythonの文法の練習にもなるし 問題中に入出力の例…
こんばんは、 今回は参考書の順番的に特殊メソッドをやろうと思ったのですが、 内容が腑に落ちなかったので、isをやります。 特殊メソッドのことは、おいおいってことで。isキーワードは前後のオブジェクトが同一ならTrue,違う場合Falseを返します。 英語と…
こんばんは、なぺです。まだまだオブジェクト指向プログラミングです。 今回は、クラス変数です。さて、今までインスタンス変数は扱ってきましたが、クラス変数とは、 その名の通りクラスオブジェクトに属する変数です。クラスもオブジェクトなのですね。 定…
こんばんは、なぺです。前回までで、オブジェクト指向プログラミングの4大要素を学びました。 今回は、もうひとつ重要なコンセプト、コンポジションについて学びます。さて、 コンポジション?本にはこう書いてあります。 コンポジション:別クラスのオブジ…
こんばんは、なぺです。 今日はオブジェクト指向プログラミングの4大要素のうちの4つ目、継承です。さて、継承とは ja.wikipedia.org 主にクラスベースのオブジェクト指向言語で、既存クラスの機能、構造を共有する新たなクラス(派生クラス、派生型)を定義…
こんばんは、なぺです。 今日はオブジェクト指向プログラミングの4大要素のうちの一つ、ポリモーフィズムについて学びます。 今日も概念の理解回なので、短くなりそうです。さてポリモーフィズムってなんぞ。 ポリモーフィズムは、「同じインターフェースで…
こんばんは、なぺです。 今日はオブジェクト指向プログラミングの4大要素のうちの2つ目、抽象化について学びます。 今回は短くなりそうまず、抽象化とは 抽象化とは、対象から細部や具体性を取り去り、本質的に重要な要素や、着目している側面のみを取り出し…
こんばんは、なぺです。 前回、オブジェクト指向プログラミングの書き方を学びました。 オブジェクト指向プログラミングには、カプセル化、抽象化、ポリモーフィズム、継承という4つの主要な概念があります。 今回はそのうちの一つ、カプセル化を学びます。…
こんばんは、なぺです。 昨日からオブジェクト指向の理解に心折れかけています。 今日も苦しいですが、よろしくお願いします。さて、前回はクラスを定義し、__init__という特殊メソッドを使ってオブジェクト(インスタンス)を生成しました。 今回は、メソッ…
こんばんは、なぺです。今回からPart2に入ります! 今日の内容は、プログラミングパラダイムについて。 プログラミングパラダイムとは、プログラミングのスタイル、手法のことらしいです。手続き型プログラミング、関数型プログラミング、オブジェクト指向プ…
こんばんは、なぺです。 今日はファイル操作の最後、CSVファイルを扱います。 産休前は何かとお世話になっていたCSVファイル。 いずれはエクセルとも連携したいし、きっと大事だよね。ということでまずはCSVについてちゃんと知ることから。CSVはComma Separa…
こんばんは、なぺです。 今日はファイル操作の二回目です。 今日はファイルの読み書きをPythonでやってみます。ファイルの読み書きにはopen関数を使います。open("ファイルパス", "モード")モードにはファイルを開くときにどのように動作するべきかを決定す…
こんばんは、なぺです。 今日も独学プログラマーで勉強します。今回は、ファイルの操作についてです。 Pythonの外側にでていく感じが中級者ぽくてイイですね。・ファイルパスは組み立てるもの ファイルを扱うには、ファイルの住所であるファイルパスを扱えな…
こんばんは、なぺです。 今日はモジュールです。?モジュールってなんぞ。 本にはこう書いてあります。 "Pythonでは、分割したコードを書いておくファイルそれぞれをモジュールといいます。言い換えればモジュールは、コードを収めたPythonファイル(.py拡張…
こんばんは、なぺです。 今日もループについて学びます。・range これまではイテラブルな要素について、その要素数だけループを繰り返すコードを書いていましたが、任意の回数だけループしたい。 そんなとき便利なのが、組み込み関数rangeです。 (組み込み…
こんばんは、なぺです。 前回はforループを勉強しました。 今回はそれを応用して、リストの要素を更新する処理を書いてみようと思います。まずリストを作ります。 >>> dora = ["doraemon", "nobita", "shizuka", "giant", "suneo"] >>> print(dora) ['doraem…
こんばんは、なっぺです。今日はついに!ループです!! やった!ということで、さっそくPythonではforを使ってループができます。 まずは、文字列から、文字を一文字ずつ取り出してみます。 >>> text = "なっぺ" >>> for moji in text: print(moji) な っ …
こんばんは、なぺです。 今日は昨日の続きで、文字列操作を淡々とやります。・文字を置換するreplaceメソッドを使えば特定の文字列を別の文字列に置き換えることができます。 >>> text = "hogehoge" >>> text = text.replace("g","n") >>> text 'honehone' …
こんばんは、なぺです。リストの次はタプルとか辞書とかあったのですが、リストと似たようなものなので、省きます。というわけで今日は文字列操作!文字列コネコネします。 ・インデックスリストでもありましが、文字列でも使えます。文字列中の文字をインデ…
こんばんは、なぺです。今日はリストについて学びます。 リストとは、好きな順番でオブジェクトを保存しておけるコンテナのようなものです。まずリストを作ります。 娘のおもちゃリストにします。 やり方は2通り。 一つはlist関数を使う方法。 >>> toys=lis…