Effective Computer Science - 頂は礎の上に -

新しい技術の多くは基礎的な技術の上に成り立っています。激動の技術変化に耐えうる体系知識の習得を目的に「基礎と実践の架け橋」となるサイトを目指します。

開発

【Python&Selenium】aタグがクリックできない

Python & Seleniumnでヘッドレスオプションをつけた状態(options.add_argument('--headless'))でaタグをクリックしようとすると以下のようなエラーが発生することが稀にある。 付近のspanタグをクリックしてしまうようだ。 ...a> is not clickable at poin…

【Heroku Django】APSchedulerで自作Modelを使う方法

前提 dbアプリが定義されていて、dbディレクト以下のmodels.pyをimportして使う herokuとDjangoでAPSchedulerが設定済み Procfileに clock: python アプリ名/clock.pyが記載されており、アプリ名/アプリ名以下にclock.pyがある。 clock.py import os import …

【Python Selenium】URLから画像をアップロード

URL対応バージョン from urllib.request import urlretrieve filename, headers = urlretrieve(画像URL) driver.find_element_by_name("img_tag_name").send_keys(filename) ちなみに、ファイルがローカルにある場合は、 driver.find_element_by_name("img_t…

【Django × Heroku × WhiteNoise】設定でエラーが出る場合の対処方法

環境 Heroku × Django × WhiteNoise で以下のような設定が済んでいる場合 対象ファイル:setting.py INSTALLED_APPS = [ 'whitenoise.runserver_nostatic', ..., ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'whitenoise.middleware…

【Djangoエラー】could not connect to server: Connection refused

エラー PostgreSQLに接続できていない。 psycopg2.OperationalError: could not connect to server: Connection refused Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432? could not connect to server: Co…

【SQL】手を動かしながら学べるサイトまとめ

Khan Academy (カーン アカデミー) カーン アカデミーは誰にでも,どこにでも無料で世界クラスの教育を提供することを使命としています。 paizaラーニング paizaラーニングは、オンラインでプログラミングしながらスキルアップできる、プログラミング入門学…

分野・言語別プログラミング学習サイトまとめ

AI Python Ruby

【Python デザインパターン】Stateパターン

Level1 Contextなし github.com Level2 Contextあり State Design Pattern in Python Level3 複雑な具体例あり 関連書籍 Pythonでデザインパターンを体系的に学びたい場合は、以下の書籍が最適です。 実践 Python 3作者: Mark Summerfield,斎藤康毅出版社/メ…

【AWS Elastic Beanstalk】eb initでアプリケーションを選択し直す

滅多起こり得ないが、ローカル環境でeb init済みのプログラムに対して、接続先のElastic Beanstalkのアプリケーションを変更したい場合がある。 interactiveオプションで設定し直せる eb init --interactive eb initだけだと、一度選択したアプリケーション…

【AWS Elastic Beanstalk】 EC2のキーペアを変更する方法

キーの紛失時などElastic Beanstalk初期設定時のEC2のキーペアを変更したい場合がある。EC2のキーペアを変更したい場合は、一度停止して再び起動しなければならない。 しかし、EC2がInstance Store-Backedである場合は、一度停止すると停止->終了->削除まで…

【コーディング面接】配列に関する問題と解説

配列とは 配列はデータを保持する最もシンプルな方法です。配列ではオブジェクトの簡単なリストが用意され、そこにデータが格納されます。インデックスがあれば素早く検索することができますが、そうでなければ遅くなりま…

Pythonを深く理解するためのツール

dis --- Python バイトコードの逆アセンブラ dis モジュールは CPython バイトコード (bytecode) を逆アセンブルすることでバイトコードの解析をサポートします。 docs.python.org 以下の方のように調査が行えます。 qiita.com CPythonのcファイル 例えばpyt…

【コーディング面接】ハッシュテーブルに関する問題と解説

ハッシュテーブルとは ハッシュデーブル(「辞書」や「ハッシュマップ」とも呼ばれます) を使うと、「値」に対して「キー」を割り当てることができます。このキーは多くの場合、数字または文字列です。値はどんなタイプのオブジェクトでも…

.python-version ファイル とは

pyenvでローカルのpythonのバージョンを設定した直後にできるファイル。 pyenv local version を実行した際に作成されるファイルで、中身にはversionだけが記載される。 例えば pyenv local 3.7.1 とすれば.python-versionの中身は以下のようになる。 3.7.1

【解決】pyenv installで最新のバージョンが見つからない

解決コマンド gitで最新バージョンのpyenvに更新 cd ~/.pyenv/plugins/python-build/../.. && git pull && cd - 解決前のエラーメッセージ python-build: definition not found: 3.7.0 The following versions contain `3.7.0' in the name: 3.7.0a2 minicon…

コーディング面接に使えるサービス

クラウドペアプログラミングサービス(面接官用) CoderPad coderpad.io CodeInterview codeinterview.io 模擬コーディング面接(Mock Coding Interviews)動画 interviewing.io interviewing.io youtu.be 練習用サイト 問題を解く練習 Interview Cake www.inter…

【Mac】ターミナルでファイルを指定行数で分割

explainshell.com ターミナルでファイルを指定行数で分割 1000行ごとに、sample.txtを分割 分割後のファイル名はsegment_に00, 01,... がつく split -l 1000 -d sample.txt segment_ 参考 www.computerhope.com

【PyCharm エラー】Cannot save setting. Please Specify a different SDK Name

Cannot save setting. Please Specify a different SDK Name 解決策 設定を開く(⌘ + ,) Project Interpreterの🔻アイコンを選択 show allで開かれるダイアログ内で、名前が重複しているものを➖アイコンで削除 参考 intellij-support.jetbrains.com

【サイト】コマンドを打ち込むと解説を生成してくれる

explainshell.com シンプルなUI コマンド送信後 コマンド rm -rf コマンド全体 に対する解説文 remove files or directories -r, -R, --recursive に対する解説文 remove directories and their contents recursively -f, --force に対する解説文 ignore non…

構成管理ツール

Puppet qiita.com chef オープンソースの構成管理ツール

ソリューションアーキテクト(SA) とは

各社の募集要項 Google Cloud プロダクトやソリューションのブリーフィング管理、概念実証、技術リソースの追加手配など、Google のお客様を技術面からサポートする お客様やパートナー様の環境において Google Cloud プロダクトの統合方法についてお客様に…

【word2vec】KeyedVectors.load_word2vec_formatのファイルフォーマット

txtファイル読み込み 全てスペース区切り from gensim.models import KeyedVectors # binary=Trueでも読み込み可能 model = KeyedVectors.load_word2vec_format(file_path, binary=False) すべてスペース区切りで、先頭行に単語数と次元数 6 4 word1 0.123 0…

GAFMA+NetflixのGitHubアカウントまとめ

GAFMAは、「 Google」「Amazon」「 Facebook」「Microsoft」「Apple」の頭文字を集めた呼称です。 Google Google GoogleChrome Google Ads Amazon Amazon Web Services Facebook Facebook Research opensource.fb.com Microsoft Microsoft Explore Microsoft…

【Python nltk】英WordNetの使い方

用語 用語 意味 例 Synset 同義語集合 lemmas 見出し語。synsetがもつ特定の意味を表す語の集合 synonyms 類義語 hypernym 上位語 「犬」の上位語は「動物」 hyponym 下位語 「動物」の下位語は「犬」 meronyms 全体-部分の関係 「木」のメロニムは「枝」 ho…

【Python csv】UnicodeDecodeError 解決法

csvを読み込もうとしてエラー発生 with open(filepath, 'r') as f: reader = csv.reader(f) for row in reader: print(row) を実行すると以下の「UnicodeDecodeError」 UnicodeDecodeError: 'utf-8' codec can't decode byte 0x91 in position 15: invalid s…