「print」を含む日記 RSS

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

2017-12-11

for k in range(3):
    code = 'name{}=[]'.format(k)
    exec(code)
    for l in range(10):
        eval('name{}'.format(k)).append(l)

print(name0)
print(name1)
print(name2)

print('###')

lstlst = [[] for k in range(3)]
for lst in lstlst:
    for l in range(10):
        lst.append(l)

for lst in lstlst:
    print(lst)

2017-11-27

pythonの問題です。100点満点のテストの最低点、平均点、最高点を求めたい。以... - Yahoo!知恵袋

地道に

score_list = []

while True:
    score = int(input())
    if score == -1: break
    score_list.append(score)

print(min(score_list))
print(sum(score_list) // len(score_list))  # // round off
print(max(score_list))


itertools を使って

itertools でこうか... すごい.., これが generator か..

itertools.takewhile の lambda x: x != -1 が False になると

itertools.repeat も yeild を止めるのか..

import itertools
score_list = list(itertools.takewhile(lambda x: x != -1, (int(input()) for i in itertools.repeat(None))))
print(min(score_list), sum(score_list) // len(score_list), max(score_list), sep="\n")

itertools.repeat

itertools.takewhile

PEP 255 -- Simple Generators | Python.org

2017-10-30

久しぶりにゲームを作りたいんだがオススメツール教えてくれ

今までの履歴ゲーム作った時期:ツールゲーム内容:備考)

小学生RPGツクール:身内ネタRPG製作時間ー10時間 プレイ時間ー5分:スクラップ・アンド・ビルドしてるうちに身内ギャグまみれのクソRPGに。一通り友達と笑って5分で飽きた。

中学生BASICピンポン・陣取りゲーム等:製作時間ー合計30時間 プレイ時間ー各2分:プログラムの基本を学んでいる間に飽きた。PRINT "Hello, world!"が一番楽しかった

大学生HSP(ホットスーププロセッサー):STG製作時間ー30時間 プレイ時間3分ゲームの作り方は一通り頭に入ったけどHSPというツール限界を感じたので別の言語を探そうとしているうちに何かが面倒くさくなって二度とプログラムとかやらねーと誓った。

最近インディーズゲームってよく出来ているのが多いじゃないですか。

から面白いのは多かったけどここ数年は特にいい波が来てると言いますか。

それでそれらをやっていたら自分も久しぶりにゲーム作りたくなったんだけど、なるたけ楽して開発の楽しみが味わえるツール言語って何かないのかな。

WOLFエディターで適当アクションRPGでも作ってろとか吉里吉里はいいぞとかでも別にいから何か知ってたら教えてくれ。

HSPみたいな入りやすいけど途中で限界を感じるような言語でも別にいいや。

30時間限界が見えたとか調子こいてんじゃねえぞって言いたいのは分かる。

すまんかった。

最近HSPでちゃんとしたフリーゲーム出てきて俺が間違ってたと思い知ったよ。

入りやすさこそが正義っすね。


こう言っておいて自分そもそも何を作りたいのかよく分からんのだけどね。

不思議の城のヘレンや魔壊屋姉妹みたいなオリジナル戦闘システムRPGかいいなーと思う反面バランス調整でゲロ吐けるなと思ったり。

まあ目標高めすぎてるからまずはピンポンレベルからやり直して、自分がやった行動に対してレスポンスが帰ってくるのを楽しもうかなと。

お前がやりたいのはモノ作りごっこなんだからマイクラカルネージハートでもやっていた方が幸せになれるぞって返答もウェルカムですよ。

ヤフー知恵遅れでやれと言いたくなる人もいるだろうけど、マルチポストはしない主義なのでこっちに絞るわ。

あっちは何かニワカが多いんだよね。

追記:

unityが人気だな。

でもガチガチプログラミングを久しぶりにやったらゲーム作る前に挫折しそうだ。

それこそキャラ絵取り込んで歩かせたら満足しそう。

とりあえずは前から気になってたScratch感覚取り戻す事にするか。

だいたい方針決まったありがとな。

2017-10-28

anond:20171027101309

タデプログラミングやってみた

実行環境は、Windows 10はてなAPIは知らない

1)URL規則性を見つける

増田場合

https://anond.hatelabo.jp/?mode=top&page=1

page=1、page=1001、・・・

2)各ページの日記規則性を見つけて、投稿時刻の取得方法検討する

増田で、先頭の日記場合

<div class="section">
<h3>
<a href="/20171010162108"> ← (雑だが)ここらへんを取ればよさそう
<span class="sanchor">■</span>
</a>
<a href="/20171010161641">anond:20171010161641</a>
</h3>
~~~
</div>

3)定数、関数の雛形、ループURLを生成・出力するだけのソースをとりあえず作成・実行

実行すると、↓が出力されるだけ

https://anond.hatelabo.jp/?mode=top&page=1

https://anond.hatelabo.jp/?mode=top&page=1001

https://anond.hatelabo.jp/?mode=top&page=2001

・・・

4)「ruby web 取得(スクレイピング)」あたりでネット検索、内容を理解せずにコピペする

4-1) 標準のopen-uriを使うと取得できるよ等見つかる

open-uriを実行すると、謎のエラー発生

C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:933:in `connect_nonblock': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)

4-2)エラーメッセージ検索、内容を理解せずにコピペする

OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

 

ここまでで、任意URLWebページ取得ができるようになる

5)Webページの内容を解析(パース)し、ページの先頭の日記のYYYY/MM/DD HH:MM:SSを取得

5-1)

HTMLはある程度構造化されているので、今回の場合だと、↓のようなとり方がいいと思う

「divタグ sectionセクション」直下の「最初のh3タグ直下の「最初のaタグhref

5-2)

思うけど、今回は、構造検索じゃなくて、単純に文字列検索だけで済ます

5-3)※

取得対象構造が変化する場合も多々あるが、構造が変化した場合でも、

構造的な取得方法を作っておけば、変化にもある程度対応やすい(パラメータの「1」を「2」にするとか)

文字列を解析的なやり方だと、取得対象の書式が変化した場合に、対処しにくいことが多い

ここらへんを、TODO:あとでやる、なんてするんだけど、もちろんあとでやらなくて不具合の温床になる

これ豆な

6)結果を出力

printコマンドプロンプトへ出力

 

例えばだが出力には、ファイルへ保存、メール送信クラウドへアップ、増田投稿 とかもある

 

ここまでで、page=1の処理ができた

7)繰り返しに注意

page=1ができればあとは繰り返すだけ

繰り返すだけなんだが、取得ごとに10秒待つことにする

あんまが~~ってやると、怒られるので

 

愚直なまでの単純な繰り返しは、PCプログラム) > 人の操作 の最たるものだと思う

 

はいえ、ほんとうに愚直で、

タイムアウトしたらどうなるのか?

・古いページは構造が異なるかもしれないのでは?

・最終ページはどこ?

・・・などなど。これらの忖度AIでも解決しにくい・・・と思う。

8)余談1 プログラム関係ネット検索すると、はてな結構ひっかかる

なにかうれしいセロry

9)余談2 スクレイピングってなんだよ

的な英単語IT用語解説よりも、英和辞典を引くとスって理解できることがある

scraping ・・・ こすること、削ること、削り落としたもの、かきくず

・・・

rubyソース

require 'open-uri'
require 'openssl'

# なんかエラーが出る暫定対処
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

BASE_URL = 'https://anond.hatelabo.jp/?mode=top&page='
PAGE_INCR = 1000

# 4) 指定URLのページを取得
def get_page(url)
    open(url).read
end

# 5) 年月日時分秒を取得
#012345678901234567890123456789012345678901234567890
#<div class="section"><h3><a href="/20171010162108">
def get_ymdhms(page)
    pos = page.index("<div class=\"section\"><h3><a href=")
    #p pos
    #p page[(pos+35)..(pos+35+13)] # YYYYMMDDHHMMSS 14
    aa = page[(pos+35)..(pos+35+13)]
    sprintf("%s/%s/%s %s:%s:%s", aa[0..3], aa[4..5], aa[6..7], aa[8..9], aa[10..11], aa[12..13])
end

# 6) 結果を出力
def print_dat(inc, ymdhms)
    puts sprintf("%06d, %s", inc, ymdhms)
end


# メイン
def main
    inc = 1
    for i in 1..10
        sleep 10 unless i == 1 # 7)初回以外は10秒待つ
        url = BASE_URL + inc.to_s
        page = get_page(url)   # 4)webページ取得
        ymdhms = get_ymdhms(page) # 5)投稿年月日取得
        print_dat(inc, ymdhms) # 6)結果出力
        inc += PAGE_INCR
    end
end

# 実行
main

 

ソース記法で書くと文字化けするので、スーパーpreで)

実行結果

ano_his.rb:67: warning: already initialized constant OpenSSL::SSL::VERIFY_PEER
000001, 2017/10/28 15:04:51
001001, 2017/10/10 17:08:08
002001, 2017/09/19 17:22:26
003001, 2017/08/24 10:23:53
004001, 2017/07/27 11:57:49
005001, 2017/06/27 17:42:17
006001, 2017/05/28 22:57:26
007001, 2017/04/28 10:26:18
008001, 2017/03/21 10:10:38
009001, 2017/02/10 15:01:32

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 ゲームをもったこども
}

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

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

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

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