いももちのきもち

悪戦苦闘の歴史のメモ

複数変数の初期化

Javaで複数の変数をまとめて初期化する方法はないようです。 //ok。これを省略表記したいと思ったが int a = 1; int b = 1; int c = 1; //ok。少し省略できました。 int a = 1, b = 1, c = 1; // コンパイルエラー int a, b, c = 1; Scalaはできます。 //ok …

wifi可視化アプリ

toricor.hatenablog.com 上の記事に関連して、wifiの電波状況を可視化するアプリが便利です。 allabout.co.jp play.google.com

java.util.Arraysのメソッドメモ

JAVA 8 APIより、java.util.Arraysのメソッド一覧、オーバーロードされているものを除いた。 'asList', 'binarySearch', 'copyOf', 'copyOfRange', 'deepEquals', 'deepHashCode', 'deepToString', 'equals', 'fill', 'hashCode', 'parallelPrefix', 'parall…

配列の中身をダンプする(表示する)

public class Main { public static void main(String[] args) throws Exception { String[] s = {"python", "java", "scala"}; String[][] ss = {{"p", "y"}, {"t", "h"},{"o", "n"}}; System.out.println(s); System.out.println(ss); } } //結果1 [Ljava.…

無線LANのお勉強

我が家も無線環境を整える必要にせまられました。 無線ルーターを導入するにあたり知らない用語が多数出てきましたので以下のサイトをみて勉強しました。www2.elecom.co.jp無線といえば電波の強度が気になるところですが、なるほど、電波は波なんだから反射…

Javaで0埋め

例:1000→0001000 のようにしたいです。 Pythonならzfillメソッドを使えばいいですね。 Javaでゼロを埋めます。 public class Main { public static void main(String[] args) throws Exception { String str = "1000"; String ans = String.format("%7s", st…

文字列を文字の配列に変換する

split関数に空文字""を渡すだけです。 String a = "ABCD"; String[] arr = a.split("");

ある自然数以下で最も近い2の累乗(の指数)を求める

例. n = 35 → 32 (2の5乗) 答え: 5 解法1 2^m double n = 35d; double m = 0d; while (!(Math.pow(2, m) <= n && n < Math.pow(2, m + 1))){ m++; } System.out.println(m); // 5.0 解法2 nを二進数表示する。桁数 - 1が求めるmである。 int n = 35; String …

参照型配列使用時の注意(Java)

基本型の配列の場合: int[] array = new int[3]; // {0, 0, 0} 参照型の配列の場合はnullが初期値に設定されるため、インスタンス生成前に使用しようとするとNullPointerExceptionが発生する。 //これならOK int N = 10; StringBuilder[] sb = new StringBu…

リストの最大値を得る

# coding: utf-8 ls = [12, 36, 27, 98, 22] 上記のリストの最大値を求めます。 print max(ls) これでいいんですが(笑)、ほかの方法を考えてみます。(i) t_max = - 2 ** 31 - 1 for i in ls: if t_max < i: t_max = i print t_max (ii) print sorted(ls)[-1]…

プログラミング練習方法とおすすめサイト

現在インターネット上には、プログラミングの問題を解くとすぐに答えを判定してくれるサイトが多数あります。特に「競技プログラミング」とよばれる、制限時間内にいかに速く正確に問題を解くかを競う分野のサイトが勉強の役に立ちます。他人の解答を閲覧で…

はてなで表組みをつくる

表組みをつくる(表組み記法) - はてなダイアリーのヘルプ上のリンクを参照のこと。例: 名前 特徴 バージョン Python 動的型付け 2.7.11 Java 静的型付け 8 (i) はてな記法による。 |*名前|*特徴|*バージョン| |Python|動的型付け|2.7.11| |Java|静的型付…

優先度付きキュー(Priority Queue)の実装 in Java

プログラミング能力向上のため、競技プログラミングの問題を多数収録しているAizu Online Judgeの問題を少しずつ解いています。以前解けなかった優先度付きキューの問題を解きなおしました。二分ヒープで実装されているので、最大値の取得はO(1)、要素の追加…

Flask-DebugToolbarのインストール

Flask-DebugToolbar — Flask-DebugToolbar 0.10.0 documentationFlaskをちゃんと使うならデバッグツールも必要だろうな、と思いインストールしました。 HTTP Headerとか各種変数に格納されている値とかが簡単に確認できます。 インストール $ pip install fl…

Flaskサンプルプログラムflaskrの作成、localhostでの動作確認

※報告のみ。 軽量フレームワークをうたうFlaskのチュートリアルにのっとり、サンプルプログラムFlaskrを作成しました。このサンプルアプリケーションは、ミニブログです。ユーザー名+パスワードでログインすると、ミニブログ(タイトル+本文)を投稿できるよう…

sshログイン情報をみる

過去にサーバーにsshログインしてきたユーザーのなかに怪しいものがないかを確認します。 $ lastユーザーごとに見たい場合 $ lastlog参考文献: knowledge.sakura.ad.jp

db作成/flaskr

Flaskを使ってHPにしたがってチュートリアルを進めていますが、以下のコマンドで、dbファイルが生成できないのでおかしいなと思っていました。 $ sqlite3 /tmp/flaskr.db < schema.sql ↑from Step 3: Creating The Database — Flask Documentation (0.10) $ …

Androidスマホでスクリーンショットを撮る

version: Android 5.0.1音量下げるボタン + 電源ボタン 同時押し

AndroidスマホでChrome上に表示の単語をコピーする

ブラウザ: Chrome 47.0.2526.83 Android: 5.0.1単語を長押しして選択 ↓ 画面上に表示される「共有」ボタンを選択(下記の赤い枠内のボタン) ↓ クリップボードにコピーを選択

csvファイルのデータからsqlite3データベースへうつす、内容の表示

Webサーバ上でデータベースを作ろうと思ったので、まずSQL文の練習をすることにしました。 csvファイルでデータをもらった後、軽量なデータベースであるsqlite3にデータを移しました。 python組み込みのsqlite3モジュールを使用しました。 データの用意 まず…

読んでいる本の紹介

「ネットワークはなぜつながるか(第2版)」 古い本ですが、未だに内容は通用する名著です。クライアントとサーバーの間の通信で何がおきるか、非常に詳しく解説されています。 インターネット業界でコードを書くならネットワークの知識がないといいコードは…

CentOS6にpython環境(pyenv/virtualenv)導入

昨日さくらVPSを契約したのに続き、環境構築中です。 こちらを参考にしてpyenv/virtualenvを導入しました。 pyenv および virtualenv の使い方 - Qoosky python2.7.11とpython3.5.1をインストールしました。python2.7.11環境にFlaskを入れて、localhostで"He…

さくらVPSはじめました

さくらインターネットの「さくらVPS」始めました。情報の多いCentOSが使えるのがいいですね。 vps.sakura.ad.jp今回はこちらに紹介のガイドに従って設定しました。普段使っているTeratermでやり方を紹介してくれているので助かります。 help.sakura.ad.jpさ…

配列を逆順に並べ替える

配列を逆順にする方法を考えます(pythonなのでリストを使います)。 言語組み込みのメソッド 最初に言語組み込みのメソッドを使ってみます。 ls = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3] ls.reverse() print ls ls = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3] print ls[::-…

WormBaseのftpサイトについて

以前WormBaseの情報を取得するのにRESTful API経由で取得する方法を紹介しました。 WormBase RESTful APIを使って好きな情報を取得する - toricor’s memoWormBaseのリリースごとのデータ全部とか、C. elegans以外の遺伝子一覧とか、まとまった情報をファイル…

csvモジュールを利用してファイルを書き込む

toricor.hatenablog.com 上の記事とセットの記事です。 今度はcsvファイルに書き出します。ファイルをオープンするときにファイルモードを指定します。読み込み用はrでした。 書き込み時はwとaが主に使われます。 ・wはファイルが存在しなければ新しく作りま…

csvモジュールを利用してファイルを読み込む

pythonのcsvモジュールを利用して、ファイルの読み書きを行います。 まずファイルを読み込みます。input.csv id,chromosome,physical_position WBVar00010869,IV,6377485 WBVar00010872,V,11574082 WBVar00020875,V,15406647# -*- coding: utf-8 -*- import …

requestsモジュールを利用してjson形式でレスポンスを得る

toricor.hatenablog.com 上の記事の続きです。 WormBaseのRESTful APIを利用して、json形式のデータを得ます。 使用するモジュールはrequestsです。 今回はrequestsモジュールの他に組み込みのjsonモジュールについても簡単に述べます。 requests導入や利用…

ラインスタンプ

おかげさまでぽつぽつと買ってもらっています。もう少しでようやく振込処理してもらえるところまで来ました。 支払方法が銀行振り込みとLINE Payを選べますが、銀行振り込みでは手数料が500円くらいかかってしまうのでLINE Payにしたいと思います。 LINE Pay…

treeでディレクトリをターミナル上で見やすく表示する

さくらインターネットで借りたレンタルサーバーを使って苦労しながらlinux(unix)をいじっています。 今日はディレクトリ構造を可視化するための便利なツールがあるということで早速入れてみました(linux初心者にとってはまだまだツールひとつ入れるだけで大…