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


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

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



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

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

前スレ
くだすれPython(超初心者用) その30
echo.2ch.net/test/read.cgi/tech/1466569767/
関連スレ
Pythonのお勉強 Part51
echo.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/
https://try.jupyter.org/

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

437 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 12:11:07.79 ID:xA6F3n6A.net]
>>424はやましいことを企んでるやつだろ
こんな奴の力になるな

438 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 12:34:45.97 ID:Y9I90W1E.net]
torでbotネットワーク作ってホワイトハウスと戦うつもりやろなぁ

439 名前:424 mailto:sage [2016/12/03(土) 16:26:42.80 ID:vCmaXAye.net]
>>432

ご意見ありがとうございました。
どうやらtorのしくみを理解できていませんでした。

torを常駐させて、そのソフト経由で外に抜けていくんですね。(これがproxy?ここがまだあまりわかっていない)
torをインストールし、centosなので、 /etc/init.d/tor start で起動したら、pythonで期待した結果が返ってきました。

大変参考になりましたありがとうございました。

>>433,434
どこかを攻撃とかではないので安心してください。
そもそもこんな設定に手間取ってるようなレベルでは、至る所に痕跡残して即アウトになると思いますし。

440 名前:デフォルトの名無しさん [2016/12/03(土) 18:21:00.98 ID:iU+ignEA.net]
127.0.0.1 の時点で気付くべき

441 名前:デフォルトの名無しさん [2016/12/03(土) 18:34:03.92 ID:SrLkI6mB.net]
hello.shに以下入力し実行したときに、
それぞれ別ターミナルで開き実行したいのですが、どうすればよいでしょうか。

#!/bin/env python
/home/hello1.py
/home/hello2.py
/home/hello3.py

442 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 22:18:12.90 ID:IRGw9hUe.net]
gnome-terminal

「linux 端末 開く コマンド」で検索!

443 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 22:21:26.72 ID:MF5SHVtU.net]
>>437
shebangおかしい
それbashスクリプトだろ

444 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 22:51:24.14 ID:/gfLXcDp.net]
gnome前提なのも草やけど
どうせ書くならgnome-openやろ

445 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 16:47:25.58 ID:DTlwy0pT.net]
[1,0,0,0,2]このリストを作るとき
[1] + [0]*3 + [2]こう書いてますが
他にも書き方ありますか?



446 名前:デフォルトの名無しさん [2016/12/04(日) 17:25:19.63 ID:yVPKVwxZ.net]
[1,0,0,0,2]

447 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 21:18:31.73 ID:dK8nOpyX.net]
笑わすなよww

448 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 22:46:30.10 ID:Y3EeqqZE.net]
真面目に>>442の方がよさそう

449 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 22:57:59.58 ID:iVFW+LnC.net]
>>442
おまえ[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2]も
[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2]って
書くの?

450 名前:デフォルトの名無しさん [2016/12/04(日) 23:08:23.19 ID:yVPKVwxZ.net]
>>445
自分でそう書いていながら珍しいものでも見るような事言われてもこっちが戸惑うのだが

451 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 23:16:25.53 ID:PqdPBV8Z.net]
前提条件として数列がどのくらいの規模になるか明かさなかった441が完全に悪い
お前のママじゃねえんだよカス
次は気をつけるか今すぐ死ねよ

452 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 23:30:50.69 ID:iVFW+LnC.net]
>>447
おまえ超初心者相手になんだその物言い
顧客相手に要件定義が足りなかったらそう言うのかてめえは
わからなきゃ質問しろって何度言えばわかるだ?

453 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 23:54:07.87 ID:3HADjSyZ.net]
どこの田舎から来たんだよ?

454 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 00:05:04.73 ID:x3Qm2Sdl.net]
単に察する能力が乏しいだけでは

455 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 06:20:09.49 ID:R/lrPaR1.net]
>>441 の疑問点は結局何なの。



456 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 07:15:42.38 ID:8RyC80/c.net]
>441
ほとんどの要素が0で、そうでないのが少しあるリストの場合、(たとえば、動的計画法(DP)で、dpテーブルを初期化するときとか)
a=[0]*1000
a[0]=1
a[-1]=2
のように、ゼロだけのリストを作ってから、非ゼロ要素を個別に設定する方法もあるよ。

さらに、要素数が100万超えていて、非ゼロが1000程度とかなら、辞書を使うかな。
collections.defaultdict(int) とかなら、初回使用時の値がゼロとして扱える。
numpyとか使えば、疎行列のライブラリもあると思う。

457 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 07:26:16.87 ID:RfiNzCiI.net]
[1, *itertools.repeat(0, 10), 2]

458 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 11:02:39.39 ID:YwBftIqj.net]
[1,1]の書き方と[1]+[1]の書き方は>>441で既に周知で他に書き方を聞いてるのに
そこで>>

459 名前:442を書く人が職場にいたら無視してる []
[ここ壊れてます]

460 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 11:10:16.32 ID:Y+KsRKI6.net]
>>454
それが普通

461 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 11:38:20.02 ID:bmyGiWQE.net]
[1, *[0] * 10 ,2]

462 名前:デフォルトの名無しさん [2016/12/05(月) 12:27:54.10 ID:+FWd7nuq.net]
>>454
俺ははこういうルビイストみたいな厨二質問する人が職場にいたらクビにしてる

463 名前:デフォルトの名無しさん [2016/12/05(月) 15:31:08.70 ID:dF177W8B.net]
>>441
[0 if 0<_<4 else 2 if _==4 else 1 for _ in range(5)]

464 名前:デフォルトの名無しさん [2016/12/05(月) 16:56:54.49 ID:aWpWVW8r.net]
すまんがこれ実行できる人いる?
プログラムのプの字もわからないからこのコードがいまだに使えるのかどうかもわからない
https://gist.github.com/staybuzz/ca935bc22350019d9911

465 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 17:37:02.69 ID:Ifet5byM.net]
じゃあプログラミングを学べよ
4ねクズ



466 名前:デフォルトの名無しさん mailto:sage [2016/12/05(月) 23:01:39.11 ID:pSDwKct5.net]
テレビ東京のサイトから、動画をDLしたいのか?

仕様がきっちりしているなら、Ruby, Anemone とかで作れる。
プログラム言語でなくても、Wget だけで、DLできるかも

>>459
Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木拓郎・るびきち、2014

467 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 00:03:18.83 ID:BJ+E4eRR.net]
>>461
あなたキモ過ぎます

468 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 08:37:37.75 ID:HUIDfPBe.net]


469 名前:WindowsでもiPhoneでもAndroidでも動くWEBスクレイピングPythonスクリプト書こうと思ったら
Pure Pythonなライブラリしか使えなくてrequests+BeautifulSoupでゴリゴリ書くの?
[]
[ここ壊れてます]

470 名前:デフォルトの名無しさん [2016/12/06(火) 10:06:33.43 ID:BZKWUFE6.net]
curl

471 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 12:41:26.78 ID:AKBojLeG.net]
スマホやタブレットでやろうとか言う考えが既に十分愚かだから
愚直にやれよ文字通り

472 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 17:01:36.53 ID:M7LAmMkO.net]
>>463
iphoneやandroidの実行環境が何なのかわからんけど、概ねその通り
ライブラリは好きなの使えばいいんでない?

473 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 18:37:11.21 ID:O55+7qyI.net]
thx愚直にやる

474 名前:デフォルトの名無しさん [2016/12/06(火) 20:53:55.88 ID:itdtPWK3.net]
classについて質問です。
classは自分でオブジェクト+メソッド群の形を作ることができる認識であってますか?

class Test:
def __init__(self):
self.h = "hello"
self.w = "world"
def hello(s):
print(s.h)
print(s.w)

s = Test()
s.hello()

こんな感じの構造を作れますよね。
Cで言えば構造体みたいな感じなのでしょうか…

475 名前:デフォルトの名無しさん [2016/12/06(火) 20:54:32.95 ID:itdtPWK3.net]
>>468
インデントがおかしくなっちゃいました。許しください



476 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 21:33:05.13 ID:r0hSL9Mg.net]
Pythonのインデントは絶対です
許しません

477 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 21:42:44.59 ID:uUd6ba73.net]
クラスのメソッドの第一引数は、self にするのが慣例。

478 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 01:40:23.76 ID:05n7PnOC.net]
75分5秒や140分05秒を表した下記文字列を秒に変換するにはどうしたら良いでしょうか?

a = "75:05"
b = "140:05"

下記で変換しようとしましたが、60分を超える時間だとエラーになりました。。
datetime.datetime.strptime("1970-1-1 9:" + a, '%Y-%m-%d %H:%M:%S').timestamp()

479 名前:472 mailto:sage [2016/12/07(水) 01:44:06.51 ID:05n7PnOC.net]
コロンでsplitして分を60掛ければ無理やり変換できますが、もうちょっとスマートな方法がないかな?と思いました。

480 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 01:59:57.97 ID:05n7PnOC.net]
あ、 >>472 も全然スマートじゃないですが笑

481 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 02:23:56.57 ID:kP34iK8E.net]
時刻でなく、時間を扱うのなら、timedeltaの方が適していると思う。
けど、splitして60倍して足す方が単純でいいような気がする。

482 名前:デフォルトの名無しさん [2016/12/07(水) 08:27:24.50 ID:0fGzq9xA.net]
pip するとVisualstudioがどうたらで成功しないんだが
vs2015入れるといけないんか?

483 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 09:24:37.38 ID:SFFNbj+E.net]
どうたらじゃなくてエラーメッセージを貼れ

484 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 10:59:43.60 ID:XaIc6vSb.net]
【初心者の皆さんにお願い】
トラブルが起きたらOSとPythonのバージョンとエラーを貼りましょう。
何が必要な情報で何が不要な情報かを判断するのは回答者です。
ご自身で情報を仕分けせずにありのままに情報を提供してください。

485 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 11:00:15.79 ID:XaIc6vSb.net]
追記
ライブラリのトラブルはライブラリのバージョンも貼りましょう。



486 名前:デフォルトの名無しさん [2016/12/07(水) 12:33:25.79 ID:mSlj6y9t.net]
>>468
CでPyObject使うと良く理解出来る

487 名前:一時的なコテハン ◆DZvVA9hOe. mailto:sage [2016/12/07(水) 18:24:09.21 ID:u5hrxlot.net]
Pythonのtextwrap.wrap()が日本語で崩れる問題
www.freia.jp/taka/blog/python-textwrap-with-japanese/index.html

上記の使用方法が分かりません

やったことは
---
# -*- coding: utf-8 -*-
import sys
import textwrap
import unicodedata
from itertools import groupby

#copy from docutils
east_asian_widths = {'W': 2, # Wide
---
以下を呼び出し元の test.py ファイルと同じディレクトリに
TextWrapper.py として保存し

test.py を以下のような感じでやってみましたが何も良くわかっていません
どのようにすればよいのでしょうか?
ideone.com/FI8n7o

日本語を指定の文字数で改行できれば別の方法でも構わないです

環境は
Windows7
Python 2.7.12
Pycharm Community Edition 2016.3
です

488 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 19:22:21.00 ID:GdRWJ2Ia.net]
ほんとうに文字数だけでいいなら1文字ずつ
unicodedata.east_asian_width()
で文字幅(返り値はヒントなので何文字分とするかはじぶんで決める)を足してって
指定の文字数を超えそうになったら改行する。

www.nltk.org/book-jp/ch12.html
カッコイイのはココとかを参考にわかち書きしてから
単語か文節単位で文字幅を判定してく。

489 名前:一時的なコテハン ◆DZvVA9hOe. mailto:sage [2016/12/07(水) 20:22:31.30 ID:u5hrxlot.net]
>>482
ありがとうございます
とりあえず日本語を指定の文字数で改行できました
ideone.com/Zjq4fc
助かりました

今回はこれで全然OKなんですが後学のためにも
> Pythonのtextwrap.wrap()が日本語で崩れる問題
> www.freia.jp/taka/blog/python-textwrap-with-japanese/index.html
の利用方法をどなたかご教示いただければ幸いです

490 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 20:27:34.62 ID:dU/UItOg.net]
>>482
素晴らしいですねこういう質問の仕方が良いです
初心者の鏡です

491 名前:472 mailto:sage [2016/12/07(水) 23:25:58.77 ID:7VkkQFGv.net]
>>475

splitがシンプルなんですね。
そちらで対応したいと思います。ありがとうございました。

492 名前:デフォルトの名無しさん [2016/12/08(木) 19:36:51.45 ID:Tsl7hmvI.net]
ド級の素人です。

同じ構造の数十ものURL(末尾に足し算で増えていく数字があるとかの規則性は一切なし)から一度に特定部分の数字をスクレイピングするのにはどうすればいいでしょうか。
調べ方が悪いのかこういうピンポイントなやり方が出てこなくて困り果ててます。

493 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 19:57:39.18 ID:N9SPSSYh.net]
>>486
スクレイピングとあるけどURL自体の取得はできてるん?
URLを文字列として取得できているなら特定部分の抽出は
reモジュールのsearch()かその仲間でできるけども
どこで困ってるかよくわからん
複数のURLをどう保持して処理するのかともとれるし

494 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 19:58:45.83 ID:pECHVU6F.net]
>486
例を示してほしい。
サンプルの入力と、期待する出力のペアで。

495 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 20:04:18.31 ID:Tsl7hmvI.net]
>>487
>>488
URLはシコシコ取得しようと思っています。
例ですが、大元となるのがこのURLで
www.oddsportal.com/tennis/australia/atp-australian-open/results/
そこに
www.oddsportal.com/tennis/australia/atp-australian-open/djokovic-novak-murray-andy-4Ip7iVkT/

www.oddsportal.com/tennis/australia/atp-australian-open/raonic-milos-murray-andy-0fidkqET/
といった感じに枝分かれ的に数十のURLがある感じです。
枝分かれ先の特定部分の数字をスクレイピングしたいという目的なんですが、数十回コードを繰り返し動かすやり方しか想像できなくて
他にもっとスマートなやり方はないものかと思ってました。



496 名前:デフォルトの名無しさん [2016/12/08(木) 20:10:42.29 ID:+5m1wjwL.net]
数十のurlがあったら数十回コードを繰り返せばいいじゃないか

497 名前:
それこそスマートというものだ
無駄にスマートなやり方を追い求める姿勢は非常にヤボったい
[]
[ここ壊れてます]

498 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 20:24:31.34 ID:Tsl7hmvI.net]
>>490
VBAでいうところのfor〜next的なやり方ができればなあと思いまして。
大量のURLを貼り付けてからコードを実行させたら自動的に順番にスクレイピングしていってくれるようなイメージの。

499 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 20:50:31.99 ID:pECHVU6F.net]
>489
その例だと、特定部分の数字って、どれのことなの?
理解が遅くて済まない。。

500 名前:デフォルトの名無しさん [2016/12/08(木) 21:01:18.37 ID:Tsl7hmvI.net]
>>492
いえいえ、言うべきでした。averageという列にある三つの数字です。
小数点以下2位までの数字二つと%表記の数字一つの合計三つです。

501 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 21:42:36.71 ID:7lL759m8.net]
pythonのスクレイピングではlxmlやPyQueryの例を検索してみては

averageはこの部分ですね。
<tr class="aver"><td class="name"><strong>Average</strong></td>
<td class="right">1.33</td><td class="right">3.39</td>
<td class=" center no-border-right-average">95.5%</td><td class="check"></td></tr>

502 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 21:46:07.19 ID:pECHVU6F.net]
>493
ようやく特定の場所の数字が何か理解できました。

urlをしこしこ取得するというのがまだ分からないのですが、
手作業かブログラムかで取得したurlを1行1urlに書き出したファイルがあるとすれば、
そのファイルから1行読み込んでurlを取得し、スクレイピングする関数(urlの内容を読み込んで、正規表現でマッチングして、みたいなことをする)にそのurlを渡して、3つの数値を得て、これをリストに追加していく、という処理をすれば良いのだと思います。
すでにある回答とほとんど同じですんません。

503 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 23:25:57.79 ID:SEkB2Ywy.net]
oddsportal github
でぐぐればハッピー

504 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 23:26:59.54 ID:Ayid3Uvv.net]
〜/results/ の、HTMLの中には、
〜/djokovic-novak-murray-andy-4Ip7iVkT/
〜/raonic-milos-murray-andy-0fidkqET/ などは、出てこない

それらを、jsonp で取得しているから、ブラウザ操作が必要。
Capybara なら、Capybara-webkit, Poltergeist(PhantomJS), Selenium あたり

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例、
佐々木拓郎・るびきち、2014

君は初心者かい?
ajax とか使っているのを、初心者がページを分析して、クロールするのは無理

505 名前:デフォルトの名無しさん [2016/12/09(金) 00:17:54.45 ID:4iZItf6M.net]
>>497
るびきち?



506 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 02:35:59.93 ID:nOVhwAKx.net]
下記で、最初のカギ括弧内のスラッシュの位置が違うだけで正規表現がマッチしたりしなかったりするのですが、なぜでしょうか?
スラッシュは特殊文字でもないと思うのですが。。

>>> a="2016-10-12"
>>> re.search(r"16(?:[ \.-/][0-3]|[0-3])[0-9]", a) →@マッチしない
>>> re.search(r"16(?:[/ \.-][0-3]|[0-3])[0-9]", a) →Aマッチする
<_sre.SRE_Match object; span=(2, 7), match='16-10'>


また、下記のような日付にマッチする正規表現を書きたいのですが、どのように書けばよいでしょうか?
"160912"
"16-09-12"
"16-9-12"
"16.09.12"
"16.9.1"
"16/09/12"
"16/10/6"
"16 09 12"

507 名前:499 mailto:sage [2016/12/09(金) 02:39:16.21 ID:nOVhwAKx.net]
あと、

"2016ほにゃらら20160912" の "20160912" にもマッチさせたいです。

508 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 04:21:53.69 ID:8sRVu5b5.net]
>>491
> VBAでいうところのfor〜next的なやり方ができればなあと思いまして。
for文を書くと良いんじゃないの。
というか、他言語で書けるならそれを貼れば話が早いような。

509 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 09:54:13.77 ID:f5GT3H9 ]
[ここ壊れてます]

510 名前:L.net mailto: >>499
一応無理矢理拾えるが、完全では無いと思う。桁数が揃ってないのは難しいんじゃないかな。
>>500のパターンが無ければ一つのパターンでいけるが、それも完璧とは言えないと思う。
[12][09]\d{2}[01]?[1-9][01]?[1-9]|\d{2}[01]\d[01]\d|\d{2}[ \-\./][01]?\d[ \-\./][01]?\d

カギ括弧内のスラッシュ云々に関しては、
スラッシュの問題ではなくハイフンをエスケープしてないからだろ。
[]
[ここ壊れてます]

511 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 09:55:29.50 ID:f5GT3H9L.net]
違った。こっちに修正。
[12][09]\d{2}[01]?\d[01]?\d|\d{2}[01]\d[01]\d|\d{2}[ \-\./][01]?\d[ \-\./][01]?\d

512 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 10:12:25.70 ID:f5GT3H9L.net]
まだおかしかったわ。
[12][09]\d{2}[01]?\d[0-3]?\d|\d{2}[01]\d[0-3]\d|\d{2}[ \-\./][01]?\d[ \-\./][0-3]?\d

513 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 11:36:17.31 ID:vb1+ZGNO.net]
r'(?x) (?:20)?\d\d ( (?: [\-\./ ] \d{1,2} ){2} | \d{4} )'

re.Xフラグで空白いれられるよ

514 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 13:05:37.65 ID:CLppIZfJ.net]
>>499
> スラッシュは特殊文字でもないと思うのですが。。
スラッシュじゃなくてハイフン "-" が特殊文字になってる
[0-3] とか書くと [0123] と解釈されるように [\.-/] がピリオドとスラッシュに解釈されてる
マッチする方はハイフンが最後の文字なのでそう言う解釈をされずにハイフンのまま残るのでマッチする
なので普通にハイフンをエスケープすればいい
re.search(r"16(?:[ \.\-/][0-3]|[0-3])[0-9]", a)

515 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 18:29:52.30 ID:B5HnSzjq.net]
>>499
codepad.org/BTjFJw7R
正規表現 後方参照



516 名前:499 mailto:sage [2016/12/10(土) 01:56:21.78 ID:qbMImXsp.net]
>>502-507

色々とコメントありがとうございます。
所望の動作を確認できました。

正規表現は奥が深い。。

-は自分が書き込んだレスにも使ってるのに何で気づかなかったんだ。。
確かによく考えたら範囲を表す特殊文字でしたね。

疑問も解決しましたありがとうございました。

517 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 21:29:19.09 ID:F6nkvz0S.net]
シュミレーション中のプログラムの変数(スピードや設定)を、プログラム実行中に変えようとして、クラス継承したGuiのクラスを作成してスライダーなどを配置して変数の値を変えようとしたのですが、他のクラスの変数を変えられません。
どうすればいいですか。またはもっとスマートな方法がありますか?

518 名前:デフォルトの名無しさん [2016/12/11(日) 23:25:04.89 ID:BA+Tsrf4.net]
趣味

519 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 13:16:01.76 ID:QOIKJDhs.net]
Pythonには、プライベートメンバーは無いから、
クラス外からでも、メンバーにアクセスできるはず

ただ、__ アンダースコア2つで始まり、
末尾がアンダースコア無しか、アンダースコア1つだけの名前を付けると、
擬似的にプライベートメンバーとなり、クラス外からアクセスできなくなる

自動的に、メンバー名に接頭辞「_クラス名」を付けられて、変えられてしまう

__a → _クラス名__a
__a_ → _クラス名__a_

__a__ ただし、これはアクセスできる

520 名前:デフォルトの名無しさん [2016/12/12(月) 14:38:48.33 ID:tdNqUxnO.net]
ソースのないクラスでも
そのクラスを継承したクラスからは
__メンバにアクセス可能

521 名前:デフォルトの名無しさん [2016/12/14(水) 14:17:45.10 ID:CxZIUsQo.net]
質問です。
あるファイルの内容が変更された場合にあるプログラムを実行したいと考えています。この様な仕組みをpythonで実装することは可能ですか?モジュールとかあれば教えていただきたいです

522 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 14:53:25.45 ID:UzzFPJML.net]
OSは?

523 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 16:13:50.19 ID:XMsUlyB4.net]
pypiでfile watchって検索して何個か見たうちだと
watchdogがマルチOS対応で頑張ってるかも。

524 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 14:01:24.44 ID:IjrcUcQd.net]
>>514
macOS X sierra

525 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 14:06:10.39 ID:IjrcUcQd.net]
>>514
macOS X sierraです。
pythonは3系使ってます



526 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 23:21:07.20 ID:YF4Jw/kg.net]
os聞いてるんじゃなくて、pythonのosモジュール使ったらどうかって言ってるんじゃないかな?

527 名前:デフォルトの名無しさん [2016/12/15(木) 23:52:45.77 ID:37JNdhcM.net]
それなら小文字で書くだろ

528 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 13:15:40.33 ID:rdfn5HPf.net]
TwitterAPI使ってツイートを取得するまではできました。
で、日付が「Tue Dec 03 15:52:27 +0000 2013」って文字列になってるのをdatetimeに変換したい
普通に「2016/10/30 01:02:03」とかをstrptimeとかで変換するのは例があるけど、Decとかを取得する例が見当たらない。
標準ではできないんでしょうか?

529 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 13:28:39.19 ID:JLSyjXhm.net]
mktime

530 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 13:42:32.64 ID:JLSyjXhm.net]
'%a %b %d %H:%M:%S %Y'

531 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 14:09:19.20 ID:rdfn5HPf.net]
"Tue Dec 03 15:52:27 +0000 2013" の "+0000"の部分に相当するフォーマット(%なんとかってやつ)がわからなくて、無理矢理削ることで取りこめた

str1 = tweet['created_at'].replace(' +0000','')
stm = time.strptime(str1,"%a %b %d %H:%M:%S %Y")
print ('created_at: {0:02d}{1:02d}{2:02d}{3:02d}{4:02d}{5:02d}'.format(stm.tm_year, stm.tm_mon, stm.tm_mday, stm.tm_hour, stm.tm_min, stm.tm_sec))

なんかダサダサなんだけどこれで実用には困らないのでヨシとするけど、実際+0900とかになった時に日本時間にスマートに変換する方法ってあるのかな?

532 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 14:13:49.61 ID:n8JQ6xp/.net]
%z

533 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 14:34:38.92 ID:rdfn5HPf.net]
>>522 >>524

str1 = tweet['created_at']
stm = time.strptime(str1,"%a %b %d %H:%M:%S %z %Y")

で取りこめた。ありがとう

534 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 14:37:19.57 ID:JLSyjXhm.net]
どんな糞サイト参考にしたんだ

535 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 14:53:17.95 ID:rdfn5HPf.net]
>>526
docs.python.jp/2/library/time.html#time.strftime

小文字の%zが乗ってなかったんだよう(´;ω;`)



536 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 15:24:47.83 ID:wweMYKJl.net]
>>527
そらPython2では未実装だから、それと解釈formatにもディレクティブだけでなく固定文字列が使える
タイムゾーンが固定ならstrftimeのサンプルコードのように+0000で置換せずともスルー出来る

537 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 15:37:29.96 ID:n8JQ6xp/.net]
>>527
こっちは %z 載ってるな
docs.python.jp/2/library/datetime.html






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

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

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