「print」を含む日記 RSS

はてなキーワード: printとは

2017-10-19

スマホプログラミング学習というのに限って

プログラムキーボードから全量入力させるのな

ボタンメニュー選んだら予約語が挿入されるシステムでいいじゃないか

PFキー押したらPRINTとかSAVEとか挿入されてた40年くらい前のハンドヘルドコンピュータのほうが機能的だぞ

2017-10-13

anond:20171013100220

puts警察だ! Rubyにおいて単純な文字列を特段厳密な制御なしに改行つきで標準出力に出したい場合printではなくputsを使え!

print msg + "\n" # back-slash
puts msg

ちなみに文字列nilだったり空文字列だったりする場合は改行が出ちゃうので注意だ!

あと文字列が改行で終わっている場合はその改行を流用してputsはなにもしないのでこれも注意だ!

それと引数文字列でも配列でもない場合はまずto_aryが試され(てそのあとto_sす)るのでものによってはprint+"\n"とは違う表示になるぞ!

うん、この例外挙動覚えて慎重に運用するくらいなら最初からprintでいいな!

anond:20171013044943

ruby

# 曜日定数定義
module YOUBI
    Sun = 0, Mon = 1, Tue = 2, Wed = 3, Thu = 4, Fri = 5, Sat = 6
end

# 指定年月日の曜日取得
# https://en.wikipedia.org/wiki/Determination_of_the_day_of_the_week#Implementation-dependent_methods
def get_youbi(year, month, day)
    day += if month < 3 then year-=1;year+1 else year-2 end # <
    (23 * month / 9 + day + 4 + year / 4 - year / 100 + year / 400) % 7
end

# 13日の金曜日判定
def super_friday(year, month)
    get_youbi(year, month, 13) == YOUBI::Fri
end

# メイン関数
def main
    for year in 2000..2100
        msg = "#{year}年:"
        for month in 1..12
            if super_friday(year, month)
                msg += "#{month}月13日 "
            end
        end

        #print msg + "\n" # back-slash
        puts msg
    end
end

# 実行
main

出力

2000年10月13日 
2001年4月13日 7月13日 
2002年9月13日 12月13日 
2003年6月13日 
2004年2月13日 8月13日 
2005年5月13日 
2006年1月13日 10月13日 
2007年4月13日 7月13日 
2008年6月13日 
2009年2月13日 3月13日 11月13日 
2010年8月13日 
2011年5月13日 
2012年1月13日 4月13日 7月13日 
2013年9月13日 12月13日 
2014年6月13日 
2015年2月13日 3月13日 11月13日 
2016年5月13日 
2017年1月13日 10月13日 
2018年4月13日 7月13日 
2019年9月13日 12月13日 
2020年3月13日 11月13日 
2021年8月13日 
2022年5月13日 
2023年1月13日 10月13日 
2024年9月13日 12月13日 
2025年6月13日 
2026年2月13日 3月13日 11月13日 
2027年8月13日 
2028年10月13日 
2029年4月13日 7月13日 
2030年9月13日 12月13日 
2031年6月13日 
2032年2月13日 8月13日 
2033年5月13日 
2034年1月13日 10月13日 
2035年4月13日 7月13日 
2036年6月13日 
2037年2月13日 3月13日 11月13日 
2038年8月13日 
2039年5月13日 
2040年1月13日 4月13日 7月13日 
2041年9月13日 12月13日 
2042年6月13日 
2043年2月13日 3月13日 11月13日 
2044年5月13日 
2045年1月13日 10月13日 
2046年4月13日 7月13日 
2047年9月13日 12月13日 
2048年3月13日 11月13日 
2049年8月13日 
2050年5月13日 
2051年:1月13日 10月13日 
2052年:9月13日 12月13日 
2053年:6月13日 
2054年:2月13日 3月13日 11月13日 
2055年:8月13日 
2056年:10月13日 
2057年:4月13日 7月13日 
2058年9月13日 12月13日 
2059年:6月13日 
2060年:2月13日 8月13日 
2061年:5月13日 
2062年:1月13日 10月13日 
2063年:4月13日 7月13日 
2064年:6月13日 
2065年:2月13日 3月13日 11月13日 
2066年:8月13日 
2067年:5月13日 
2068年:1月13日 4月13日 7月13日 
2069年:9月13日 12月13日 
2070年:6月13日 
2071年:2月13日 3月13日 11月13日 
2072年:5月13日 
2073年:1月13日 10月13日 
2074年:4月13日 7月13日 
2075年:9月13日 12月13日 
2076年:3月13日 11月13日 
2077年8月13日 
2078年:5月13日 
2079年:1月13日 10月13日 
2080年:9月13日 12月13日 
2081年:6月13日 
2082年:2月13日 3月13日 11月13日 
2083年:8月13日 
2084年:10月13日 
2085年:4月13日 7月13日 
2086年:9月13日 12月13日 
2087年:6月13日 
2088年:2月13日 8月13日 
2089年:5月13日 
2090年:1月13日 10月13日 
2091年:4月13日 7月13日 
2092年:6月13日 
2093年:2月13日 3月13日 11月13日 
2094年:8月13日 
2095年:5月13日 
2096年:1月13日 4月13日 7月13日 
2097年:9月13日 12月13日 
2098年:6月13日 
2099年:2月13日 3月13日 11月13日 
2100年:8月13日 

28年周期なの?

wikiのSakamotoメソッドソースwiki記法不具合じゃないの?

と思いましたが、、。

 ↓

https://groups.google.com/forum/#!msg/comp.lang.c/GPA5wwrVnVw/hi2wB0TXGkAJ

 ↓

"-bed=pen+mad."[m] 文字列の添字なんだな・・。

2017-09-10

anond:20170910121642

ウソです

 

 

CentOSインストール
c:\>docker pull centos

c:\>docker run -i -t centos /bin/bash

# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

pythonパスバージョン
# which pyhton
bash: which: command not found

# yum install which
Loaded plugins: fastestmirror, ovl

# which python
/usr/bin/python

# ls -l /usr/bin/py*
-rwxr-xr-x 1 root root   78 Nov  6  2016 /usr/bin/pydoc
lrwxrwxrwx 1 root root    7 Aug  1 17:23 /usr/bin/python -> python2
lrwxrwxrwx 1 root root    9 Aug  1 17:23 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 7136 Nov  6  2016 /usr/bin/python2.7

# python --version
Python 2.7.5

yumとは
# which yum
/usr/bin/yum

# file /usr/bin/yum
bash: file: command not found

# yum install file

# file /usr/bin/yum
/usr/bin/yum: Python script, ASCII text executable

# head /usr/bin/yum
#!/usr/bin/python
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

    %s

# yum --version
3.4.3
  Installed: rpm-4.11.3-21.el7.x86_64 at 2017-08-01 17:23
  Built    : CentOS BuildSystem <http://bugs.centos.org> at 2016-11-05 23:37
  Committed: Florian Festi <ffesti@redhat.com> at 2016-07-26

  Installed: yum-3.4.3-150.el7.centos.noarch at 2017-08-01 17:23
  Built    : CentOS BuildSystem <http://bugs.centos.org> at 2016-11-15 15:30
  Committed: CentOS Sources <bugs@centos.org> at 2016-11-03

  Installed: yum-plugin-fastestmirror-1.1.31-40.el7.noarch at 2017-08-01 17:23
  Built    : CentOS BuildSystem <http://bugs.centos.org> at 2016-11-06 00:11
  Committed: Valentina Mukhamedzhanova <vmukhame@redhat.com> at 2016-08-04

yum remove pythonしてみた
# yum remove python
Loaded plugins: fastestmirror, ovl
Resolving Dependencies
--> Running transaction check
---> Package python.x86_64 0:2.7.5-48.el7 will be erased
--> Processing Dependency: python >= 2.4 for package: yum-3.4.3-150.el7.centos.noarch
--> Processing Dependency: python >= 2.2 for package: pyxattr-0.5.1-5.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: yum-metadata-parser-1.1.4-10.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-kitchen-1.1.1-5.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pygpgme-0.3-9.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-pycurl-7.19.0-19.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: libxml2-python-2.9.1-6.el7_2.3.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-chardet-2.2.1-1.el7_1.noarch
--> Processing Dependency: python(abi) = 2.7 for package: dbus-python-1.1.1-9.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-urlgrabber-3.10-8.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pyxattr-0.5.1-5.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: yum-3.4.3-150.el7.centos.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pyliblzma-0.5.3-11.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: pygobject3-base-3.14.0-3.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-iniparse-0.4-9.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: yum-utils-1.1.31-40.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: rpm-python-4.11.3-21.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: yum-metadata-parser-1.1.4-10.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-kitchen-1.1.1-5.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pygpgme-0.3-9.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-pycurl-7.19.0-19.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: libxml2-python-2.9.1-6.el7_2.3.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-chardet-2.2.1-1.el7_1.noarch
--> Processing Dependency: python(abi) = 2.7 for package: dbus-python-1.1.1-9.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-urlgrabber-3.10-8.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pyxattr-0.5.1-5.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: yum-3.4.3-150.el7.centos.noarch
--> Processing Dependency: python(abi) = 2.7 for package: pyliblzma-0.5.3-11.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: pygobject3-base-3.14.0-3.el7.x86_64
--> Processing Dependency: python(abi) = 2.7 for package: python-iniparse-0.4-9.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: yum-utils-1.1.31-40.el7.noarch
--> Processing Dependency: python(abi) = 2.7 for package: rpm-python-4.11.3-21.el7.x86_64
--> Processing Dependency: python-sqlite for package: yum-3.4.3-150.el7.centos.noarch
--> Running transaction check
---> Package dbus-python.x86_64 0:1.1.1-9.el7 will be erased
---> Package libxml2-python.x86_64 0:2.9.1-6.el7_2.3 will be erased
---> Package pygobject3-base.x86_64 0:3.14.0-3.el7 will be erased
---> Package pygpgme.x86_64 0:0.3-9.el7 will be erased
---> Package pyliblzma.x86_64 0:0.5.3-11.el7 will be erased
---> Package python-chardet.noarch 0:2.2.1-1.el7_1 will be erased
---> Package python-iniparse.noarch 0:0.4-9.el7 will be erased
---> Package python-kitchen.noarch 0:1.1.1-5.el7 will be erased
---> Package python-pycurl.x86_64 0:7.19.0-19.el7 will be erased
---> Package python-urlgrabber.noarch 0:3.10-8.el7 will be erased
---> Package pyxattr.x86_64 0:0.5.1-5.el7 will be erased
---> Package rpm-python.x86_64 0:4.11.3-21.el7 will be erased
---> Package yum.noarch 0:3.4.3-150.el7.centos will be erased
--> Processing Dependency: yum >= 3.4.3 for package: yum-plugin-ovl-1.1.31-40.el7.noarch
--> Processing Dependency: yum >= 3.0 for package: yum-plugin-fastestmirror-1.1.31-40.el7.noarch
---> Package yum-metadata-parser.x86_64 0:1.1.4-10.el7 will be erased
---> Package yum-utils.noarch 0:1.1.31-40.el7 will be erased
--> Running transaction check
---> Package yum-plugin-fastestmirror.noarch 0:1.1.31-40.el7 will be erased
---> Package yum-plugin-ovl.noarch 0:1.1.31-40.el7 will be erased
--> Finished Dependency Resolution
Error: Trying to remove "yum", which is protected

 

 

結論

依存チェックではじかれて、pythonを削除できません

2017-07-20

プログラムが動きません

#!/usr/bin/env ruby

# coding: utf-8
require 'okusan'
require 'bengoshi'

furin = 10 % 3

if futin == 0 then
  print("割り切れました¥n")
else
  print("割り切れませんでした¥n")
  print("結果は", 流出, "です¥n")
end

2017-07-10

# File "ssl_logger.py", line 343

print "SSL Session: " + p["ssl_session_id"]

^

SyntaxError: Missing parentheses in call to 'print'

[2]+ 終了 1 python3 ssl_logger.py -verbose 5807

2017-06-20

BASICって、今でも初心者向け言語として優れてるのかな?

これ、すげー懐かしい、N88とかMSXのような雰囲気

http://gigazine.net/news/20170620-nintendo-switch-fuze-code-studio/

しかし、このご時世にBASIC

行番号とLOCATE, PRINT, CLSとかでゲームつくんの?

しんどくね?

それとも、プログラミングを知らない人には、こういうののほうが今でも分かり易いのかな?

2017-06-02

http://anond.hatelabo.jp/20170602170355

Javaは、オブジェクト指向を盲信し、すべてにおいてオブジェクト指向強制したのが間違いだった。

Java で、hello worldプログラムすると

public class Hajimete {

public static void main(String[] args){

System.out.println("Hello, world.");

}

}

こんなに長く書く必要があるのが一番嫌われた理由

他の言語なら

print("Hello, world.");

ぐらいの1行で済むんだ。

2017-05-27

文系だと文献リスト必須じゃない」の意味

なんかけっこうな数の人に勘違いされてるようで驚く。そんなおかしなことじゃないでしょ。ということで補足。

言っとくけど、これは剽窃無断転載をしていいって意味じゃないですよ。参考文献の情報を表示する方法が違うってだけの話。

標準的理系とか社会科学系の論文では、注ってこうやって示しますよね(以下、例はあくま架空のものです)。

Trump (2018: 70)は次のように主張している。一方、Obama (2018: 47)はこれに反対していて……

この場合、文献リストがないと駄目です。だってこれだけじゃ、どの論文書籍ことなのかわからないもん。だから論文の末尾に文献リストをつけて、

って書く必要があるわけです。これがないとアウト。

でも、人文系場合は、

トランプは次のように主張している(※1)。一方、オバマはこれに反対していて……(※2)

※1 Donald Trump, Make America Great Again (New York: Trump Tower, 2018), 70.

※2 Barack Obama, Yes, We Can (Chicago: UC Press, 2018), 47.

って表示することが許されてるわけですよ。これ、末尾に文献リストつける必要あります? そりゃつけた方が親切だと思うけど、なくても別にいいでしょ。だって参考文献の書誌情報はじゅうぶん伝わってるんだから

なんで下のようなやり方がされるかっていうとですね、私も確かに上の方が便利だと思うんですが、文系論文だと、

みたいな資料引用することが結構あってですね、そういうタイプ資料を扱う研究者にとっては下の形式の方が楽なんですわ……。もちろんそれらの資料でも、工夫すればちゃんと上の形式引用できますし、実際そうやってるひともいるけど、下のやり方は伝統的なので根強く残ってるのです。

あとまあ、学会によっては「下のやり方で書いて文献リストをつけるな」って投稿規定に書いてあったりするしね(もちろん上を指定してる学会もあります。ケースバイケース)。

http://anond.hatelabo.jp/20170525145352

トラバブコメに応答

シカゴマニュアル読んで出直してこい、あほ

http://anond.hatelabo.jp/20170527080444

おっ、せやなシカゴマニュアルのものじゃないけど、手元の解説書を読んでみたら、次のように書いてあるわ(分量的に引用として許される範囲を超えているけど、そこは勘弁してほしい)。

本書は、2つの最も一般的引用方式を扱っている。「注記式参考文献目録方式notes-bibliography style」、または簡単に「参考文献目録方式bibliography style」(人文科学全般や一部の社会科学で用いられる)と、「カッコ入り出典―参照リスト方式parenthetical citations-reference list style」、または「参照リスト方式reference list style」(大部分の社会科学、および自然科学物理学で使われる)と呼ばれるものだ。(後略)(※1)

参考文献目録方式引用では、資料を使ったことを、典拠言及するセンテンスの最後に、上つき数字を付けることによって示す。

He argues that "in an uncertain world, printed materials can be put to use in ways that make them powerful." 1

それから対応する数字をつけた注で、引用の出典を挙げ、それに関する情報(著者、表題、および出版情報)とともに、該当するページ番号を明示する。注はそのページの一番下(脚注と呼ばれる)か、レポート最後に集められたリスト(後注と呼ばれる)の中に印刷される。すべての注は共通形式をとる。

N: 1. Adrian Johns, The Nature of the Book: Print and Knowledge in the Making (Chicago: University of Chicago Press, 1998), 623.(※2)

※1 ケイト・L・トゥラビアン(沼口隆・沼口好雌訳)『シカゴスタイル――研究論文執筆マニュアル慶應義塾大学出版会2012年、194頁。

※2 同、195頁。

で、シカゴマニュアルが何ですって?

id:death6coin

海外でも下があるの?これもガラパゴスだったりする?

元増田でも例を挙げたけど、この方式採用している英文学術誌なんてたくさんあります。私が見たことある限り(ちゃんと読んだというわけじゃなくて、単純に論文ダウンロードして形式確認した限りということ)では、中国語韓国語ドイツ語フランス語スペイン語イタリア語ロシア語学術論文でこの形式は許容されてる。

海外の著者だと、たとえばウンベルト・エーコが『論文作法』って本の中でこの方式を詳しく説明してるので、ご覧になってみては。

文系からすると、この方式を知らない方がガラパゴスですよ。だって文系理系の人はこの方式使わないで別の方式使うよね、って知ってるもん。なんで理系は、文系では別の方式も使うよねって知らないんです?

もちろん、この方式でも、たとえば1冊の本にまとめる場合なんかは末尾に文献リストをつけるのがふつうだと思いますだってそうじゃないと、その分野に関する文献にどんなのがあるか知りたいときにめんどくさいもの。一度、文献リストをつけられてない英語の本を読んだことあるけど、注を逐一確認して文献を探すのめんどくさかったですよ。ただ、論文程度の分量なら、注を逐一確認するのもそこまで苦ではないし、だいたい単にめんどくさいってだけでじゅうぶんに出典表示の義務果たしてるし、紙幅の問題もあるしで、つけないことが多いんじゃないかなぁ。学位論文とかで、文献リスト絶対につけること! っていう決まりがある場合はつけないといけないけど、それは単に投稿規定守れっていうのと同じ話なので……

2017-04-30

http://anond.hatelabo.jp/20170430134310

対象としているプログラムの外側まで含めて、とにかくどこで壊れるかを分析する。

対象としているプログラムが想定していないデータが流れてくる、ハードウェア問題、なども考える。

対象としているプログラム問題があることが確定したなら、デバッガが使える環境ならデバッガステップ実行、使えないならPrint文を並べる。

範囲が広すぎるなら、部分ごとに調査して問題の起こる領域を絞り込んでいく。

あるコード片で壊れることが特定できたなら、それを最小限で再現できる状態を作る。

データ依存ならあらゆるデータを放り込んで傾向を見る。

問題ないように見える1行で壊れるなら、利用しているフレームワーク問題を疑ってみる。

2017-04-13

http://anond.hatelabo.jp/20170413190432

Pythonとかじゃないの? インデントブロック作る言語

if a == 5:
    print "A==5"

if (a == 5) {
    printf("A==5");
}

と同じ現象だと思う。

2017-03-17

hateb boy

塀!塀!塀!

塀!塀!塀!

Welcome to this crazy Town

このイカレた社会へようこそ

君はhateb boy

まともな奴ほど feel so bad

正気でいられるなんて運瞑睡だぜ

you, hateb boy

ここはまさに世の場末

澱んだホッテントリで僕らは出会った

Keep you bookmark 言い抜けて

この腐敗と自由コールのまっただなか

No bkm no cry 肉染みは

絶望じゃなくてスターマニフェスト

We are living, living in the panties

We still fight, fighting in the panties

丙!丙!丙!

丙!丙!丙!

誰もこころは傷だらけ

増田書いて泣いててもはじまらいか

print out

どっちを向いても feel so sad

だけど詩には至らない

気分はどうだい? masuda boy

ここは永遠ルックアウト

梯子を握りしめ僕らは出会った

Keep you bookmark 切り抜けて

この狂気希望手斧のまっただなか

Nonpori no cry 進まなきゃ

勢いを増した互助会の中を

We are living, living in the panties

We still fight, fighting in the panties

We are living, living in the panties

We still fight, fighting in the panties…

2017-02-20

http://anond.hatelabo.jp/20170220005414

順位はてブ割合ドメイン備考
12528.48%anond.hatelabo.jpごみ
22107.07%blog.livedoor.jpごみ
32046.87%togetter.comごみ
41936.5%www.itmedia.co.jp
51565.25%d.hatena.ne.jp
61294.34%www.asahi.com
7923.1%headlines.yahoo.co.jp
8802.69%gigazine.net
9762.56%www3.nhk.or.jp
10722.42%japan.cnet.com
11591.99%qiita.com
12501.68%www.lifehacker.jp
13391.31%www.slideshare.net
14351.18%alfalfalfa.com
15341.14%business.nikkeibp.co.jp
16341.14%internet.watch.impress.co.jp
17321.08%hatenanews.com
18321.08%hotwired.goo.ne.jp
19311.04%bylines.news.yahoo.co.jp
20290.98%nlab.itmedia.co.jp
21270.91%www.buzzfeed.com
22260.88%itpro.nikkeibp.co.jp
23240.81%hamusoku.com
24240.81%jp.techcrunch.com
25240.81%www.publickey1.jp
26240.81%www.yomiuri.co.jp
27230.77%japanese.engadget.com
28230.77%speakerdeck.com
29230.77%www.nikkei.com
30230.77%www.sankei.com
31230.77%www.welluneednt.com
32210.71%pc.watch.impress.co.jp
33210.71%pcweb.mycom.co.jp
34210.71%twitter.com
35190.64%kabumatome.doorblog.jp
36180.61%mainichi.jp
37180.61%www.atmarkit.co.jp
38170.57%himasoku.com
39170.57%news.livedoor.com
40170.57%www.huffingtonpost.jp
41170.57%www.watch.impress.co.jp
42160.54%toyokeizai.net
43160.54%www.47news.jp
44150.51%allabout.co.jp
45150.51%sankei.jp.msn.com
46150.51%www.ringolab.com
47140.47%nikkeibp.jp
48130.44%karapaia.livedoor.biz
49130.44%portal.nifty.com
50130.44%www.forest.impress.co.jp
51130.44%www.gizmodo.jp
52120.4%paiza.hatenablog.com
53120.4%shinta.tea-nifty.com
54110.37%news4vip.livedoor.biz
55110.37%weekly.ascii.jp
56110.37%www.geocities.jp
57110.37%www.youtube.com
58100.34%blog.goo.ne.jp
59100.34%kirik.tea-nifty.com
60100.34%phpspot.org
61100.34%r.nanapi.jp
62100.34%tabi-labo.com
63100.34%wired.jp
64100.34%www.afpbb.com
65100.34%www.cnn.co.jp
66100.34%www.hatena.ne.jp
67100.34%www.ideaxidea.com
6890.3%matome.naver.jp
6990.3%readingmonkey.blog45.fc2.com
7090.3%slashdot.jp
7180.27%coliss.com
7280.27%finalvent.cocolog-nifty.com
7380.27%japan.internet.com
7480.27%lineblog.me
7580.27%medium.com
7680.27%note.mu
7780.27%pipipipipi-www.hatenablog.com
7880.27%r.gnavi.co.jp
7980.27%www.mainichi-msn.co.jp
8070.24%bb.watch.impress.co.jp
8170.24%blog.bulknews.net
8270.24%blog.japan.cnet.com
8370.24%blog.tinect.jp
8470.24%diamond.jp
8570.24%e0166.blog89.fc2.com
8670.24%kachibito.net
8770.24%kiri.jblog.org
8870.24%naoya.dyndns.org
8970.24%photoshopvip.net
9070.24%workingnews.blog117.fc2.com
9170.24%www.appbank.net
9270.24%www.excite.co.jp
9370.24%www.future-planning.net
9460.2%blogos.com
9560.2%cards.hateblo.jp
9660.2%journal.mycom.co.jp
9760.2%macaro-ni.jp
9860.2%mudainodqnment.blog35.fc2.com
9960.2%satoshi.blogs.com
10060.2%www.j-cast.com
10160.2%www.nikkansports.com
10260.2%www.oshiete-kun.net
10360.2%www.yutorism.jp
10460.2%zasshi.news.yahoo.co.jp
10550.17%antipop.zapto.org
10650.17%blog.tatsuru.com
10750.17%blogs.itmedia.co.jp
10850.17%burusoku-vip.com
10950.17%gendai.ismedia.jp
11050.17%k-tai.impress.co.jp
11150.17%mantan-web.jp
11250.17%natalie.mu
11350.17%orecipe.hatenablog.com
11450.17%takagi-hiromitsu.jp
11550.17%techlife.cookpad.com
11650.17%this.kiji.is
11750.17%waranote.blog76.fc2.com
11850.17%www.newsweekjapan.jp
11950.17%www.nikkei.co.jp
12040.13%artifact-jp.com
12140.13%hail2u.net
12240.13%homepage.mac.com
12340.13%kengo.preston-net.com
12440.13%takekuma.cocolog-nifty.com
12540.13%www.100shiki.com
12640.13%www.geocities.co.jp
12740.13%www.sem-research.jp

そーす
#www.itmedia.co.jp(165)
#blog.livedoor.jp(103)

def main

    hatebu = {}
    total = 0

    open('hatebu.dat').each do |line|
        domain = line.split('(')[0]
        bukuma = line.split('(')[1].chomp[0..-2].to_i
        total += bukuma

        if hatebu.has_key?(domain)
            hatebu[domain] += bukuma
        else
            hatebu[domain] = bukuma
        end
    end

    index = 1
    hatebu.sort {|(k1, v1), (k2, v2)| v1 == v2 ? k1 <=> k2 : v2 <=> v1}.each do |kv|
        per = (kv[1].to_f / total * 100).round(2)
        print "|#{index}|#{kv[1]}|#{per}%|#{kv[0]}|\n"
        index += 1
    end

end

main

2017-02-07

運動瞑想Xevraが僕の名さ

well say it well say it

寝るは寝るで効くが今はPrint out!

2017-01-14

http://anond.hatelabo.jp/20170114155348

明確な目標があるのに、もったいない

ネットだと、情報が多すぎるのかな

javascriptかな?と思ったけど、ruby

ifもforもでてこなくてスマ

eachが形を変えたforです

いろんなとこからコピペ量産して、2時間近くかかりました^^

api取得はすぐだったけど、json、hash、arrayでごにゃごにゃ)

rubyソース

# ライブラリ
require 'net/http';
require 'uri'
require 'json'

# 検索文字
$q = 'http://ci.nii.ac.jp/books/opensearch/search?q=%E7%B3%9E&format=json'

# web-apiから取得
# https://support.nii.ac.jp/ja/cib/api/b_opensearch
def search(q)
    uri = URI.parse(q)
    json = Net::HTTP.get(uri)
    result = JSON.parse(json)
end

=begin
取得データ1件サンプル
{"title":"糞土",
"link":{"@id":"http://ci.nii.ac.jp/ncid/AN00094249"},
"@id":"http://ci.nii.ac.jp/ncid/AN00094249",
"@type":"item",
"rdfs:seeAlso":{"@id":"http://ci.nii.ac.jp/ncid/AN00094249.json"},
"dc:date":"1953",
"dc:creator":"糞土会",
"dc:publisher":["糞土会"],
"prism:publicationDate":"1953",
"cinii:ownerCount":"8"},
=end

# データ整形
#
# 入力データ構造
# {"@id":"http://ci.nii.ac.jp/books/opensearch/search?q=%E7%B3%9E&format=json",
#  "@graph":[ { "items":[ ,,,
#
# 出力(ハッシュ)
# {title => dc:date ,,, }
def format(hash)
    title_date = Hash.new

    # ハッシュキー"@graph"の値の配列の先頭のハッシュキー"items"のハッシュ配列を取得
    items = hash['@graph'][0]['items']

    # タイトル出版年を取得して、戻り値ハッシュへ追加していく
    items.each do |item|
        title = item['title'].chomp
        date  = item['dc:date']
        title_date.store(title, date)
    end

    return title_date
end

# 並び替え
def sort(hash)
    hash.sort_by do |key, value|
        value
    end
end

# 出力
def print(hash)
    hash.each do |key, value|
        puts "#{value}年 #{key}"
    end
end

# メイン関数
def main
    # web-api検索して、
    result1 = search($q)
    # データを整形して、
    result2 = format(result1)
    # 出版年で並び替えて、
    result3 = sort(result2)
    # 出力する
    print(result3)
end

# 実行
main

rubyスクリプトの実行結果

C:\Users\unko\Desktop\prog>ruby webapi.rb
1848年 人欲辨 (じんよくべん)
1870年 雀糞論説
1920年 青瓷説
1933年 管内ニ於ケル鶏糞ノ利用状況
1947年 糞尿譚 : 小説1953年 糞土
1955年 黒い裾
1955年 形成
1959年 石糞
1972年 糞 : 海田真生個人文芸誌
1972年 乳幼児糞便図譜
1987年 糞尿と生活文化
1991年 皇居と糞尿と大嘗祭 : 皇居「糞尿」裁判を支える会ニュース
1995年 糞袋
2000年 糞尿史 : 遷都は糞尿汚染からの逃避だった
2005年 「糞尿」大全
2007年 糞虫たちの博物誌
2008年 うんちのはなし : う~んとげんきになる
2009年 糞神

2016-12-18

"チ○コ"の3文字から2文字抜き出して伏字にしたら"チ○コ"に見える仮説

チ○ン
チ○コ
ン○チ
ン○コ
コ○チ
コ○ン

いかがかな?


ソース

import itertools

for chars in itertools.permutations(u"チンコ", 2):
    print(u"○".join(chars))

2016-12-14

絶対音感 と 相対音感

http://raykawamoto.hatenablog.com/entry/2016/12/14/180939

相対音感絶対音感イメージPythonで書いてみた。

相対音感 Aの値は任意に設定可

A=440

S=[]

for n in range(12):

S.append(A * (2**(1/12))**n)

print(S)

絶対音感 絶対的周波数テーブル

S=(440.0, 466.1637615180899, 493.8833012561241, 523.2511306011974, 554.3652619537443, 587.3295358348153, 622.253967444162, 659.2551138257401, 698.456462866008, 739.988845423269, 783.990871963499, 830.6093951598907)

print(S)

辞書型にして、音名と関連づける。

相対音感は±50セントの幅を許容し、高低差も認識

絶対音感は精度が高くなればなるほど許容範囲が狭くなる。

そんなイメージではないかと考えています

2016-09-19

http://anond.hatelabo.jp/20160919121645

追記:論理積論理和優先順位で間違いがあったため修正しました。

まず最初の条件をif分を一回終わらせて入れ子にするか、falseならreturn させるといい。

入れ子になってもとにかく自分が分かるようにするといいです。

一行で書くのはそのあとではどうだろう

if(param == 0 && test(param2)) {
   if(!param3) {
     something todo
   }
 }

また

if(!(param == 0 && test(param2))){
  return false;
}
if(test(param2) || !param3) {
  実行分
}

あと、一つの条件式で書きたいなら、括弧を使ったり、改行したりして、式の流れを細かくすると分かりやすくなる。

2:paramが0

3:かつ

4:判定関数でparam2の条件を返して、true

5:またはparam3がfalseのときtrueから

 

なのに param==0 && 判定(param2) || !param3 だと

param==0 && 判定(param2)

!param3

で別れるはず(言語によって違う可能性もありますが)

だけど、日本語言葉にすると「paramが0かつ判定関数でparam2の条件を返して、trueまたはparam3がfalseのときtrueから

となって、かかる範囲が分かりづらくなるから

から論理演算子が複数になるときは、日本語でかつ、または使うと逆に混乱するから

trueになる一つ目の条件の時は「○○」またはといったように書くと、

冗長的ですが、言葉にしても分かりやすいかと思います

それ以外には既に上げていた色んな増田の方のやり方もそうだし、

変数名で分かりやすくするというのもあるぞ。


is_children = age < 20
has_game    = check_game(param2)
if(is_children && has_game) {
  print ゲームをもったこども
}

条件式は思考ブレーキがかかるからこうやって、

変数名に置き換えること、文章として読めるからブレーキがかかりにくくなる。

と、無理にワンライナーで書かない方法を導入すると理解やすくなると思います

2016-07-25

gitにおけるコミットログ/メッセージ例文集100

私はコミットログの書き方に悩む英語の苦手な人間である。実際、似たような人は世の中に結構いるようで、頻出単語を集計したりまとめたものは既にあって役に立つのだけれど、これらはあくま単語の話であり、具体的な文を構成する過程でやっぱり困る部分がかなりあった。

要するに、どういう時にどういう文が使われているのか、ということを示した例文集が欲しいのであるググると他にも「例文集があればいいのに」みたいな声はあるくせして、しかし誰も作ろうとしない。何なんだお前ら。それじゃ私が楽できないじゃないか

仕方なく自分でまとめたので、増田に垂れ流しておく。

はじめに

ここで挙げているコミットログは全て実際のコミットログから転載である。当然ながら各コミットログ著作権はそれぞれの書き手にある。いずれも各英文でググれば出てくるし、フェアユース範囲なら許してくれるだろうと考え名前プロジェクト名は割愛したが、ここにお詫びと感謝を述べておきたい。

抽出条件だが、参考にできそうなコミットログを多く含んでいそうなリポジトリGitHubSTARの多い方からざっと目で見て適当に選び、それぞれ最新コミットから5000件抽出した(あわせて前処理として、コミットログ冒頭のタグ情報は消去した)。

結果として対象としたリポジトリは以下の通り。

atomのみ5400件抽出していたため、計25400件のコミットログベースである。このうち、以下の条件に合致するものは参考例にすべきでないとして一律排除した。

こうして残った8540件を眺めながら、適当に切り出したのがこの用例集である個人的に「うーんこの」と思った表現も、散見される場合は載せた。

ということで、以下用例を羅列していく。

用例集

オプションフラグメニューを追加した
ファイルを追加した
メソッド機能を追加した
実装を別のものへ切り替えた
  • Use args.resourcePath instead of args.devResourcePath
  • Use arrays instead of while loops
  • Use auto instead of repeating explicit class names
  • Use weak pointer instead of manual bookkeeping
  • Change all uses of 'CInt' to 'Int32' in the SDK overlay
  • Change Integer#year to return a Fixnum instead of a Float to improve consistency
新しく何かに対応した/機能上の制約を取り払った
何かを使うようにした
より好ましい実装に改良した
何かを出来ない/しないようにした
  • Don't bail reading a metadata instance if swift_isaMask isn't available
  • Don't exit until the parent asks for an instance
  • Don't include Parent pointer in Nominal/BoundGeneric TypeRef uniquing
  • Don't use MatchesExtension for matching filters
  • Don't use ES6 class for AutoUpdater windows class
  • Don't use MatchesExtension for matching filters
  • Avoid `distinct` if a subquery has already materialized
  • Avoid infinite recursion when bad values are passed to tz aware fields
オブジェクトの内容や挙動確認やすくした
Assertを追加した
不要コードを除去した
コードを移動した
名前修正した
さなバグタイポ修正した, 警告を潰した
バグや好ましくない挙動修正した
テストコメントドキュメントを追加した
テストを削除した
テストコメント修正した
ドキュメント修正した

表現傾向とまとめ

以上の用例をふまえ、今回の参考ログ8540件から先頭の単語を出現回数で並べると次のようになった。

Add1149
Fix1014
Update584
Remove566
Use382
Don't260
Make228
Move178
Change103
Rename85
Improve76
Avoid68
Allow65
Implement60
Handle58

コミットログの基本形はもちろん動詞 + 名詞である名詞固有名詞複数形、不可算名詞が多いが、単数形場合冠詞は a が使われるか、あるいは省略される。the はまず使われない。

何かを追加した、という表現では非常に広く Add が使われる。メソッドからテストドキュメントに至るまで大概これでまかなえる。

一方、何かを修正した、という表現では広く Fix が使われる。「何か」は typocrash といった単語からメソッド名まで幅広い名詞を取るが、動名詞はあまり取らないのと、that節は取らないのでその点は注意が必要である

Fix は「何かが正しく動くようにした」ことを示し、正しい動作内容が何かを説明しない。そこで正しい動作内容に言及したい場合Make sure が使われる(こちらはthat節が取れる)。ただし Fix よりもニュアンス的に重い表現と思われ、Fix を使わず Make sure ばかり使うのはちょっとキモいのではないかと思う(Ensure はさらに重い表現っぽい)。

また、Fixtypo 以外でのドキュメント修正に対して使われることは稀である。対して Update はドキュメントコメントテストに使われ、本体コード修正に対しては使われない。本体コード修正にあわせてテスト更新したなら Update が使われる。ただ、テスト機構それ自体バグ修正したなら Fix である

無駄な何かを単純に除去したなら Remove を使う。これまでのもの(A)からのもの(B)に切り替えたのであれば Use B instead of A か Change A to B が使われる。新たに何かを利用するようにしたのであれば Use を、利用を取りやめた場合Don't use を使うことが多い。

何かをしないようにしたなら Don't を、内部実装効率化なら Make A + 比較級/形容詞Improve が使われる。

中身の変更を伴わない単なる名前の変更なら Rename A to B、コード機能論理上の場所を移動させたなら Move A to B である

この辺はリファクタリングと呼ばれる行為と思うが、Refactor というぼんやりした動詞はあまり使われず、このように変更内容の種類に応じて動詞が使い分けられている。

余談

コミットログにはWhyを書くべきだ、というのを何かで見かけたので because とか since を使ったログがどの程度あるかを調べたが、8540件のうち22件だった。基本的に短く、シンプルに、一目で意味が取れるログが好まれる傾向がある。例えば get rid of とか2件しか使われておらず、圧倒的に remove である

一方で、シンプル単語だけど開始単語としては使われないものもある。例えば次のような単語である。Expand(9)、Extend(8)、Print(5)、Optimize(5)、Publish(4)、Append(4)、Modify(3)、Manage(2)、Revise(2)、Dump(2)、Insert(2)、Migrate(2)、Enhance(1)、Edit(1) 。いずれもカッコ内は8540件に対する冒頭での登場回数である。結局、より一般的平易な単語で表せたり、Refactor同様に抽象度が高すぎると使われないのだろう。

おわりに

8000件もログを見たおかげで、迷いなくコミットメッセージが思いつくようになったのが個人的には今回書いてて最大の収穫だった。たぶんカンニングペーパーを作る行為それ自体効率のいい学習になるという話と同じだと思う。

このまとめも100以上用例を転載してあるので、それを読むだけでも多少は効果があるんじゃないかと思う。同じようにコミットログ書きたくねぇなぁ英語わっかんねぇなぁと思っている人にとって、何か役に立つところがあれば幸いである。

2016-07-18

Vimフィルタコマンドで使うUNIXコマンド

http://vim-jp.org/vimdoc-ja/change.html#filter

Vimにはフィルタコマンドといって、テキスト任意UNIXコマンドで処理するExコマンドが用意されている。

用意されていて、実際強力なんだけど、Vim組み込み機能で間に合うことも多くて、下記以外はあまり使っていない気がする。

以前はVim正規表現に慣れないからとPerlを使ってたりもしたけれど、Vim正規表現も悪くないかなとなって。こう。

何かおすすめUNIXコマンドがあったら教えてください。

bc

簡単計算をするときに使う。1行に計算式を書いて「:.!bc<CR>」あるいは「!!bc<CR>」とすると計算ができる。

(小数を扱いたいときは-lオプション指定する)

「<C-r>=」で代用できる。

sh

長めのコマンドを実行するときに使う。「:%!sh<CR>」とすると書いたシェルスクリプトを実行できる。

最近Bashの<C-x><C-e>で良い気がしてる。こちらだとヒストリで戻って<C-x><C-e>として再編集することもできるので。

column

簡単な整列をするのに使う。ビジュアルモード選択して「!column -t<CR>」とすると整列ができる。

(デフォルトのセパレータがスペース二つなので、一つにしたければ-oオプション指定して「!column -to' '<CR>」という風にする)

vim-easy-alignやvim-aligntaが入っているならそれでいいかも。

jq, xmllint, pup

それぞれJSONXMLHTMLを整形するのに使う。JSONは「:%!jq .<CR>」、XMLは「:%!xmllint --format -<CR>」、HTMLは「:%!pup<CR>」。

ただ「jq . <JSONファイル> | vim -」としていたりして、直接Vimの中で使ってない場合が多いかも。

awk

連番を振る時、重複行を削除する時、指定した列を抜き出す時、などなど、色々なことに使える。

それぞれ「:%!awk '{printf"\%-6d \%s\n",NR,$0}'<CR>」、「:%!awk '\!a[$0]++'<CR>」、「:%!awk '{print$2}'<CR>」といった風にする。

tee

保存するために管理者権限必要場合sudoと一緒に使う。「:%!sudo tee %<CR>」とすると保存できる。

編集中のテキストを何処かに残すため……と思ったけど:wで事足りる。

2016-05-26

BUMP OF XEVRA

print out大事

ホッテントリを待たないでブクマした愚かなドリーマー

数えたらキリがない程のメンヘル互助会でさえも

愛して迎え撃った呆れたビリーヴァー

目を開いたその中に見える確かな愚かさが

空になったワード理由を注ぐ

そうしてまた僕は誰かの背中を刺していく

たった一つ諌めるお気に入り失うんだ

精一杯ネット粛清

過ちを指摘するネガコメすら価値のある財宝

print out 病院

憐れみ絶望も拾っていく呆れたビリーヴァー

誰もが皆それぞれのコメを書く

それぞれの見た眩しさが愚かさなんだ

そうだよまだ僕は僕の大脳を持ってる

たった一言書く為に

いつだって命懸け 当たり前だ

精一杯ネット粛清

診断も決めつけも自分だけに意味のあるコメント

print out 恐ろしい

暴言の日々全て拾っていく呆れたビリーヴァー

精一杯運営に抵抗

決して消えはしないネットゴキブリを照らし出す灯台

print out 恐ろしい

荒らしの中嬉しそうにブコメした愚かなドリーマー

誰もがXEVRA

永遠のXEVRA

http://anond.hatelabo.jp/20160520124353

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん