[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/25 07:49 / Filesize : 245 KB / Number-of Response : 1024
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれPython(超初心者用) その28



1 名前:デフォルトの名無しさん mailto:sageteoff [2015/11/15(日) 15:26:08.75 ID:r8bNQIop.net]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その27
peace.2ch.net/test/read.cgi/tech/1441317912/

関連スレ
Pythonのお勉強 Part51
peace.2ch.net/test/read.cgi/tech/1443700103/

◆関連リンク Python の Home Page
ttp://www.python.org/

◆長いコードはこういうところにはってください
ttp://ideone.com/
ttp://codepad.org/
ttp://pastebin.com/
ttp://dpaste.com/

◆まとめwiki
ttp://python.rdy.jp/

802 名前:デフォルトの名無しさん mailto:sage [2016/01/28(木) 20:38:51.90 ID:jiZvs+3s.net]
qiita.com/HirofumiYashima/items/e6287c50e0d989cc9a50
一つ目と三つ目はいいが、二つ目はコイツ連想配列を何だと思ってんだ

803 名前:デフォルトの名無しさん [2016/01/28(木) 20:41:02.66 ID:wYSfr60X.net]
>掲示板のようなwebアプリ作りたくて開発の流れ知りたいんですが

こう言ってるなら学習コスト低いPHPでいいんじゃないんですか
プログラミング作法覚えて、Webサーバ覚えてとかPHPなら1日でできる

804 名前:デフォルトの名無しさん mailto:sage [2016/01/28(木) 20:56:46.07 ID:0fscHvYa.net]
3ヶ月後に飽きないで続けてる可能性は0に近いだろうし

805 名前:デフォルトの名無しさん mailto:sage [2016/01/28(木) 21:43:31.33 ID:1OTd/ctL.net]
>>785
勉強がてらbottleでやろうとしてます。ただbottleやり始めてGETとか初めて知ったように、セキュリティとか知らないことばかりでこのまま独学でやっても穴だらけになりそうで不安なんです。それで開発の流れをしっかり追いたいなと
django難しそうで避けてたのですが調べてみます!

>>787
偏見でpythonやりたいなと。アプリ作るのも目的の一つなんですが、python使えるようになるのも目的なんです。本屋いくとphpいいなと後悔しそうになりますが…

806 名前:デフォルトの名無しさん mailto:sage [2016/01/28(木) 22:55:04.32 ID:86zv120m.net]
文法などは「みんなのPython 第3版」を読む

素人だろ。だったらDjangoよりも、標準装備のBottleでいいよ。
O/Rマッパーには、SQLAlchemy。
DBは、SQLite でいい

bottle-sqlalchemy と、
HTMLフォーム用に、WTForms パッケージを使う

807 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 01:22:09.27 ID:dmJ8qTNS.net]
>>790
ありがとうございます!めちゃくちゃ参考になります
ちょうど動的にするのはどうやるのか悩んでたので、WTformsから勉強してみます。db関連も良さそうな記事いくつか見つけられました。本当助かります。

808 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 03:59:11.22 ID:xjlJZ9Nb.net]
みんなのPython Webアプリ編読んでるんだったら、あれこれ手を出す前にちゃんとそれを読んだ方がいいよ
簡単なWebフレームワークをスクラッチから作るような内容の本だから、それでアプリを作れるようにはならなくても、勉強のために読むのは間違ってない
セキュリティとか気になるんなら、Web技術の基本的な本とWebセキュリティの本をちゃんと別に読んで勉強した方がいいよ
急がば回れ、覚えることがたくさんで時間がかかるだろうけど焦らずにやりましょう
あとPythonは2系じゃなくて最新の3系を使うように

809 名前:デフォルトの名無しさん [2016/01/29(金) 09:00:26.26 ID:4KefNEoy.net]
プロパティが邪悪な機能に感じてきた

810 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 09:14:18.12 ID:CBTGpVRc.net]
じゃあ使わないように



811 名前:デフォルトの名無しさん [2016/01/29(金) 14:44:40.54 ID:+dgjzxQ2.net]
2.6.1です。
csvファイルの中身を検索したいのですが、
以下の様な感じでbreakした後に再度検索しようとすると

812 名前:
csvファイルを前回の続きからしか読み込んでくれません。

頭から読み込み直す方法か、より良い方法があれば教えてください。

csvf=csv.reader(f)

for itm in csvf:
if itm=='aaa':
break
[]
[ここ壊れてます]

813 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 15:48:23.72 ID:ibhbR8pf.net]
Numpyで空の配列を作るのに
A = np.array([None for x in range(9)])
B = np.array([None for x in range(9)])
と必要な数だけ書いているのですが、もっと楽に
A, B, ... =
みたいな形で作ることってできませんか?

814 名前:デフォルトの名無しさん [2016/01/29(金) 16:28:23.64 ID:+dgjzxQ2.net]
A = B = C = D =np.array([None]*9)

815 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 16:59:01.35 ID:0D6FNiIY.net]
>>795
f.seek(0)

816 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 17:52:24.38 ID:+dgjzxQ2.net]
>>798 それでは頭に戻ってくれませんでした。一応テスト用全文です。
import codecs,csv
ff="001.csv"
f = codecs.open(ff, 'r','utf-8')
csvclm=csv.reader(f)
i=0
for itm in csvclm:
i=i+1
print itm,i
if i>4:
break
f.seek(0)
i=0
for itm in csvclm:
i=i+1
print itm,i
if i>4:
break

817 名前:デフォルトの名無しさん [2016/01/29(金) 18:13:39.28 ID:OC0x4uOh.net]
>>786
そーゆーのは頭のhを抜いて引用しなさい

818 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 19:01:05.13 ID:0D6FNiIY.net]
>>799
f.seek(0)
for itm in csv.reader(f):

もし十分小さなCSVファイルのみ扱う予定なら
毎回ファイルから読まずにメモリ上に全部読み込む
with open(ff, 'r', 'utf_8') as f:
 L = list(csv.reader(f))
for itm in L:

819 名前:デフォルトの名無しさん [2016/01/29(金) 19:27:26.57 ID:4HVuVC7s.net]
pandasのread_csvを学順にする方法はありますか?

data = [1,2,3]

data = [3,2,1]
みたいにしたいです。

820 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 19:55:06.84 ID:oPEVn/Bc.net]
>797
それだと、Aを書き換えるとBやCも書き換わってしまうので、目的の動作とは違うと思います。



821 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 23:32:33.67 ID:UpleMCop.net]
>>802
reverse は元のリストの内容そのものを、逆順に変える(破壊的)

reversed は、元のリストを変えず、新たなリストを作って返す

822 名前:デフォルトの名無しさん mailto:sage [2016/01/29(金) 23:34:12.64 ID:BlK2FEgd.net]
>>797
試しにやってみましたが、一つを書き換えると他も書きかわるということは起こりませんでした
アリガタマキン ( ´∀`)ノ⌒ω)Д`)ブニュ

823 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 00:35:20.92 ID:6nQEmebb.net]
>805

ideoneで試したら、他のも書き換わってるんだけど。。
何か、私が勘違いしてるのかな?
ttp://ideone.com/WDi3sh

824 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 01:38:12.76 ID:1oljgPJ8.net]
>A = B = C = D =np.array([None]*9)

そりゃ、newをDの所で、1回しかしていないから、
配列オブジェクトは1つしかないだろ?

825 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 07:04:09.02 ID:lGgUibWd.net]
>>796
> と必要な数だけ書いているのですが
A, B, C, … を配列とかリストとかにするわけにはいかんのか?

826 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 07:19:42.27 ID:0eZeJPcv.net]
>>796
A, B, C, D = (np.array([None] * 9) for _ in range(4))

827 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 07:44:05.05 ID:bowpuvz9.net]
アンパックできません言われそう
素直にリスト内包にしておくべきだった

828 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 09:34:43.90 ID:MnabVcLq.net]
まずそこはempty使ってほしい
rangeで作るのはPython的であってnumpy的では無いよ

829 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 11:05:16.92 ID:4vD/pPiQ.net]
今日の日付のファイル名のテキストを開きたい場合

import datetime
today = datetime.date.today()
fmt_name = "./{0:%Y%m%d}.txt".format(today)
でファイル名を作り

そのファイル名のファイルがあるか調べるにはどうしてますか
1.とりあえずファイルを開いてみてエラーかどうか
2.ファイルがあるか調べてから開く
どちらがいいのでしょうか

830 名前:デフォルトの名無しさん [2016/01/30(土) 11:07:49.64 ID:ME5lnK1K.net]
エラーって正しい動きなの?



831 名前:812 mailto:sage [2016/01/30(土) 11:30:51.99 ID:4vD/pPiQ.net]
1.とりあえずファイルを開いてみてエラーかどうか

import datetime

today = datetime.date.today()

fmt_name = "./{0:%Y%m%d}.txt".format(today)

print(fmt_name)

try:
with open(fmt_name, 'r') as file:
data = file.read()
print(data)

except FileNotFoundError:
print('ファイルが見つかりません')

832 名前:812 mailto:sage [2016/01/30(土) 11:33:56.60 ID:4vD/pPiQ.net]
2.ファイルがあるか調べてから開く

import os
import datetime

today = datetime.date.today()

fmt_name = "./{0:%Y%m%d}.txt".format(today)

print(fmt_name)

#ファイルの存在を確認
f = os.path.exists(fmt_name)

if f:
with open(fmt_name, 'r') as file:
data = file.read()
print(data)

else:
print ('ファイルが見つかりません')

833 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 12:33:18.50 ID:bowpuvz9.net]
ファイルを開く回数が多いなら2+1(ファイルの存在確認をしつつ例外に備える)
そんなに何度も開かないなら1

2だけってのはない
toctou問題と同様に、ファイルの存在確認をしても
開く瞬間には存在しない可能性がある

834 名前:812 mailto:sage [2016/01/30(土) 12:48:25.78 ID:4vD/pPiQ.net]
>>816
ありがとうございます。
あまり何回も開くファイルではないので1の方法にします。

835 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 17:05:02.14 ID:sS3ZmVxF.net]
ここまでpyramidなし。

836 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 19:01:33.73 ID:ULVMSBs9.net]
pyramidはマイクロフレームワークすぎて飽きた

837 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 21:40:23.11 ID:iV9fHNNg.net]
>>806
本当ですね
私はMacの標準で入っているPython2.7でターミナル上から対話的に試したのですが、書き換わりませんでした
本来使っているPythonでも通用するか気をつけてみます

>>808
2次元にするのが簡単なのは分かっていますが、あとで見返したときに変数の意味がわからなくなるので、個々の変数名を付けたかったのです

他の方々もありがとうございました
一般的な方法はないようですね

838 名前:デフォルトの名無しさん mailto:sage [2016/01/30(土) 23:10:33.75 ID:MJrrD1Ir.net]
識別用の名前が必要なら、変数を増やすよりdict使うほうが
データの増加にコードが耐えられるだろうから試してはどうだろう

839 名前:デフォルトの名無しさん mailto:sage [2016/01/31(日) 00:01:13.63 ID:lawpjjqe.net]
import ○○
これって実行する度に毎回処理が行わてると思うんだけどこの処理って重い?

840 名前:デフォルトの名無しさん mailto:sage [2016/01/31(日) 00:12:48.21 ID:aOiL+kc7.net]
一度importされたファイルはキャッシュされているはずだが



841 名前:デフォルトの名無しさん [2016/01/31(日) 15:59:43.85 ID:U9E70V0b.net]
list内のnullの数を数えたいのですがどうるればいいでしょうか?

a = [1,2,3]
b = [4,,6]

a=0,b=1のような感じで数えたいです。

842 名前:デフォルトの名無しさん mailto:sage [2016/01/31(日) 16:02:43.97 ID:CEQ2rTW9.net]
>>824
a.count(None) ?
nullってなんだ?

843 名前:デフォルトの名無しさん [2016/01/31(日) 16:08:46.57 ID:U9E70V0b.net]
>>825
実際にはこんなlistです
[1983.0, 1.0, 4.0, nan, nan]

844 名前:デフォルトの名無しさん mailto:sage [2016/01/31(日) 16:28:25.14 ID:CEQ2rTW9.net]
a は ndarrayかな?
あまり考えずに思いついたのは
map(math.isnan, a).count(True)

845 名前:デフォルトの名無しさん [2016/01/31(日) 16:41:41.48 ID:U9E70V0b.net]
>>827
思ってたことができました、ありがとうございます。

846 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 06:05:24.82 ID:SPm6Nkhw.net]
インデントがブロックの役割を果たすというけど
他の言語知らんからブロックが何か分からんです

847 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 09:23:10.34 ID:uwsvagLI.net]
■をブロックとする

if 1:
■return True
else:
■if 0:
■■return True

848 名前:795 [2016/02/01(月) 09:46:33.60 ID:6G9Lt4z7.net]
>> 801
たびたびすみません。その様にしても続きからよみこまれてしまいます。

849 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 11:43:55.76 ID:mJMVhcGQ.net]
c#やjavaだと{ }で括ってる部分だな

850 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 13:54:07.43 ID:SPm6Nkhw.net]
>>830
人に物教えるの苦手そう
あとなんかそれ色々とおかしくね?



851 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 20:58:55.74 ID:me+imUgB.net]
素朴な疑問なんですが、なぜ各出版社は似たような入門本ばかり出すのでしょうか?

その先が知りたいのに。

uwsgi、gunicorn、sqlalchemy、各フレームワークの導入方法、テンプレートエンジン、デーモン化などを収録した本を出してくれたらweb系の人なら飛びつくと思うのですが。

852 名前:デフォルトの名無しさん mailto:sage [2016/02/01(月) 21:43:31.42 ID:LZvTT2lb.net]
だってそんなの各プロダクトのドキュメントに書いてあるもの
ドキュメントが読めない初心者以外には用のない物だから大して売れないの

853 名前:デフォルトの名無しさん [2016/02/02(火) 14:47:01.41 ID:chGMw9p3.net]
1.自分で調べる香具師は本買わなくても検索で済ませられる
2.自分で調べられない馬鹿が本を買う
3.馬鹿しか本を買わなくなる
4.馬鹿用の本が良く売れる
5.馬鹿用の本しか作らなくなる

854 名前:デフォルトの名無しさん [2016/02/02(火) 14:48:14.79 ID:chGMw9p3.net]
1.自分で調べる香具師は本買わなくても検索で済ませられる
2.自分で調べられない馬鹿が本を買う
3.馬鹿用の本が良く売れる
4.馬鹿用の本しか作らなくなる
5.馬鹿しか本を買わなくなる
3.に戻る

こうか

855 名前:デフォルトの名無しさん mailto:sage [2016/02/02(火) 20:21:59.93 ID:0ZXVvwXf.net]
導入方法ったら、how to installとgetting started、basic usageあたりだ。
そんなもの解説してどうするんだ。

856 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 16:41:03.28 ID:LPKV0KNu.net]
Python 2.7.11
Scrapy 1.0.4
OSX 10.10.5

始めて三日目です
Scrapyを使ってgoogleの検索結果から
クローリングとスクレイピングをやりたいのですが
何も取得できずにspiderがClosingします、
Wえbページ上のマッチ条件がよくないのでしょうか?
match = response.xpath('//div[@class=

857 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 16:44:44.70 ID:LPKV0KNu.net]
すみません
途中で切れていました
class='g'
でリンクが含まれるタグを指定しています

ソース全体
https://ideone.com/bYcNcH

858 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 17:17:10.18 ID:rFj8guoM.net]
>>840
重ね重ね申し訳ない

19行目は「self.parse_jp」です

859 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 21:32:00.91 ID:9qM+6YO5.net]
scarpyとか全く知らないけど
本当に<div>の中に<meta>と<title

860 名前:>があるのかなと思いました(小並感) []
[ここ壊れてます]



861 名前:デフォルトの名無しさん [2016/02/03(水) 21:36:57.09 ID:OLIKWXgN.net]
これってなんぞ?
https://w...content-available-to-author-only...o.jp/#q=jjppaann

862 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 21:43:20.24 ID:9qM+6YO5.net]
https ://w 〜〜非公開〜〜 o.jp/#q=jjppaann

863 名前:デフォルトの名無しさん mailto:sage [2016/02/03(水) 22:01:55.32 ID:rhUCWRZ0.net]
>>843
#q=があるから
たぶんGoogleで「jjppaann」を検索した結果のurl
かな

864 名前:デフォルトの名無しさん [2016/02/04(木) 17:14:35.80 ID:ob+62gtm.net]
日本語ドメインじゃね

865 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 21:15:27.88 ID:5A35es+x.net]
year = 1980
month = 12
day = 24
が与えられている状態で、現在時刻での年齢を求めたいんですが、どのようにすれば良いですか?
today = datetime.date.today()
birth = datetime.date(year, month, day)
today - birthの後はどのようにすればいいですか?

866 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 21:20:16.38 ID:yEQirXYS.net]
宿題かよ…

867 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 21:30:13.14 ID:vqMYghiB.net]
何の実りもねえな

868 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 21:31:18.44 ID:5A35es+x.net]
いや、
kaorumori.hatenadiary.com/entry/20090513/1242212161
d.hatena.ne.jp/cheeseshop/20090210/1235591147
この辺のが自分にはいまいち分かりにくかったもので

>>> today - birth
datetime.timedelta(12825)
となった後どのように処理すればいいのかなと思いまして

869 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 21:39:04.48 ID:vqMYghiB.net]
timedeltaはカレンダーを考慮しないからそこで行き止まりですよ

870 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 22:10:32.53 ID:q15XlpDF.net]
ママのおっぱいでも吸ってろ糞ガキ



871 名前:デフォルトの名無しさん mailto:sage [2016/02/04(木) 22:45:06.21 ID:VCdKpmhx.net]
>>850
閏年があるので時間差から正確な年齢は得られないよ
年で引き算して、日付が誕生日にまだ達してないなら1を差し引く

if (at.month, at.day) < (bd.month, bd.day):
この部分は
if (at.month < bd.month) or (at.month == bd.month and at.day < bd.day):
と等価

タプルでの比較は
 第1要素同士で比較
 もし等しいなら第2要素同士で比較
 もし等しいなら第3要素同士で比較
 ・・・以下同様

872 名前:デフォルトの名無しさん mailto:sage [2016/02/05(金) 15:18:44.05 ID:w34rBmrp.net]
関数の返り値がリストで帰ってくるのですが

a=[10]
print(a)
[10]

a=10
のようにaに10を入れたいのですが

試しに[a]=[10]
のように書くと
a=10

これで正しいのでしょうか
何か資料があれば教えてほしいのですが

873 名前:デフォルトの名無しさん mailto:sage [2016/02/05(金) 15:23:38.98 ID:ojECHGm5.net]
>>854
10はどっから来たものなの?
リストの長さ?

874 名前:デフォルトの名無しさん mailto:sage [2016/02/05(金) 15:50:23.64 ID:jhG7P/uP.net]
スマン良くわかってなかった
a=(関数)[0]
こういうことがしたいって事か?

875 名前:デフォルトの名無しさん mailto:sage [2016/02/05(金) 16:02:44.49 ID:4ytwlTiG.net]
>>854
[a]=[10]は、aに10を代入するで正しい
だけど先頭の内容を代入するならa=[10][0]と添え木を使うのが自然だと思う

分割代入はシーケンスの長さや値の位置が固定されている局面向け
リストは可変長なので考慮しておかないと思わぬエラーに遭う

876 名前:854 mailto:sage [2016/02/05(金) 16:05:33.79 ID:w34rBmrp.net]
わかりづらくてすみません

関数の返り値が[10]のようになるので関数は考えず省略してます。

a=[10]の中身の10をaに代入したいのですがa=10にしたい場合
[a]=[10]と変数に[]をつけるとa=10になるので
その説明の資料があれば教えてほしいのですが

877 名前:デフォルトの名無しさん mailto:sage [2016/02/05(金) 16:29:57.83 ID:4ytwlTiG.net]
>>858
理解できれば初心者卒業してる
docs.python.jp/3/reference/simple_stmts.html#assignment-statements

簡単に説明すると
左辺のカッコは[]と()どちらでもよい
>>> (a, b) = [10, 20]

左辺のカッコは省略して書くことが多い
>>> a, b = (10, 20)

カッコを入れ子にすることで細かく代入できる
>>> (a, (b, c)) = [0, [1, 2]]
>>> a, b, c
(0, 1, 2)

アスタリスクで残りをまとめて代入できる
>>> a, *b, c = [100, 200, 300, 400, 500]
>>> a, b, c
(100, [200, 300, 400], 500)

878 名前:854 mailto:sage [2016/02/05(金) 16:47:11.30 ID:w34rBmrp.net]
>>857,859
わかりやすい説明ありがとうございます。

関数の変数がリストで返ってくるので中身がひとつだけなので
リスト外したいなと思っていて質問しました。

可変長の場合確かにいまの方法だとおかしくなりそうですので
添え木を使う方法にしようと思います。

すごく勉強になりました。ありがとうございました。

879 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 11:25:40.49 ID:Ts3ostqy.net]
添え字やぞ!

880 名前:デフォルトの名無しさん [2016/02/06(土) 11:43:22.32 ID:ImjLGNHN.net]
無粋なやっちゃ



881 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 11:56:28.07 ID:72HY3Rzj.net]
パイソンに添え木ニキ爆誕

882 名前:デフォルトの名無しさん [2016/02/06(土) 13:23:28.53 ID:fazvGls3.net]
ああ左辺にも * 使えたんか

883 名前:デフォルトの名無しさん [2016/02/06(土) 15:33:49.58 ID:lR7LjFZn.net]
dockerにanacondaが入らなくて泣きそう

884 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 15:38:24.27 ID:cWanzCPY.net]
楽するためのもので苦労するとか酷いコント演じてますね
ヴァカみたい

885 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 22:38:21.69 ID:gUuTmcOu.net]
2015-12-20 00:36:00
2015-12-20 00:42:00
2015-12-21 10:36:00
2015-12-22 08:36:00
2015-12-22 08:45:00
2015-12-23 15:36:00

こんなリストがありまして、n日に何回あったかをカウントしたい。
この例ですと、20日が2,21日が1、というようになります。

open()を使って読み込むまではできました。datetimeをimportしてs.dayで日付の取得はできるところまできました。これをどうカウントしていいかわかりません。 i = s.day とかして退避してifで比較すればいけそうな気がするのですが、思うようにいきません。教えてください。

886 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 22:44:21.68 ID:5ZOibTPd.net]
itertools.groupbyしてlenするのはいかが

887 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 22:50:41.03 ID:5ZOibTPd.net]
collections.Counterのがいいかな

888 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 22:56:54.80 ID:gUuTmcOu.net]
>>868,869
ありがとうございます。
どちらも試してみます。

889 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 23:24:19.21 ID:RVLPq+WB.net]
collections.Counterなんてもの初めて知ったわ

import collections
with open(

890 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 23:27:18.51 ID:RVLPq+WB.net]
途中で切れたので ttp://pastebin.com/YTCLqz1G



891 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 23:38:00.97 ID:y0aNOiGQ.net]
1つの同じclassに属するmethodの一部いくつかを
複数のファイルに分割して記述する方法は
Pythonにありますか?

892 名前:デフォルトの名無しさん mailto:sage [2016/02/06(土) 23:51:54.66 ID:5ZOibTPd.net]
ありませんなあ
近い方法としてはmixin

893 名前:873 mailto:sage [2016/02/07(日) 01:54:09.10 ID:XRfQ2Roz.net]
>>874
あざーす
ちと残念です

894 名前:デフォルトの名無しさん mailto:sage [2016/02/07(日) 08:13:46.36 ID:n5xcEjGA.net]
複数のファイルに分けたいならクラスも分けるべき

895 名前:デフォルトの名無しさん mailto:sage [2016/02/07(日) 09:10:12.14 ID:Q6NI89/5.net]
こんな感じのことならできるよ

def c_foo(self, v):
 print(self._X, v)

class C(object):
 _X = 100
 def __init__(self):
  pass
 foo = c_foo

c = C()
c.foo('hello')

896 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 03:07:30.03 ID:ku7GvGJ5.net]
質問!

>>>a = np.array(10)
>>>a
array(10)

みたいに入っちゃってるやつはどうやって取り出せばいいですか?

897 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 04:55:36.89 ID:5Q2HQS/W.net]
カッコの中の値のことを言っているならa.tolist()

898 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 13:33:54.86 ID:rVIS0mJb.net]
a.shape

899 名前:デフォルトの名無しさん [2016/02/09(火) 15:14:13.06 ID:H0Jk8QTh.net]
python3で、みんなのpython webアプリ編のサンプルを動かそうとしたのですが、
実際にcgiサーバーをたてて動かすと、
b

900 名前:デフォルトの名無しさん [2016/02/09(火) 15:15:41.87 ID:H0Jk8QTh.net]
python3で、みんなのpython webアプリ編のサンプルを動かそうとしたのですが、
実際にcgiサーバーをたてて動かすと、バイト値?のような形で出力されます。
これは、utf-8のエンコードができてないのでしょうか。
どうすれば、ブラウザに読める文字を出力できるのでしょうか、教えてください。
サーバーで動かそうとしたプログラムは、ideone.com/wgYoxI です。
クエリは、yearを3000に指定しました。



901 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 16:21:32.13 ID:rVIS0mJb.net]
文字列ごとにエンコードするんじゃなくて
既にstdoutにかぶせてあるエンコード処理を別のものに差し替える
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')

または
素のstdoutにバイナリデータで書き込む
sys.stdout.buffer.write(binary_data)

902 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 16:25:29.57 ID:5Q2HQS/W.net]
print()は出力文字列をエンコード処理するのだが
>>882ではバイト列を渡しているので「バイト列の表示」をやろうとしている
最後のprint()の.encode('utf-8')を外して文字列を出力するようにするんだ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<245KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef