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


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

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



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

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

前スレ
くだすれPython(超初心者用) その38
https://mevius.5ch.net/test/read.cgi/tech/1526522954/

475 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 20:15:26.78 ID:O0tCb1jZ.net]
ありがとうございます!
確かめたくても方法が分からなかったですので。助かりました

476 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 21:15:09.25 ID:jLw0xcfm.net]
>>449
どうやったら試せますか?

477 名前:デフォルトの名無しさん [2018/10/14(日) 21:16:06.39 ID:WLfX4fFS.net]
キャッシュで判る

478 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 21:44:29.12 ID:FWr9wKhu.net]
>>451
>>448の状態で、importしてないと呼び出せない機能をmainに書き込む
たとえば

def func1():
import re
re.compile('hoge')←これはfunc1をよんでくればエラーしない

def main():
re.compile('hoge')
↑func1をよんでないのにこれ書いたらエラーする

479 名前:デフォルトの名無しさん [2018/10/14(日) 21:45:08.68 ID:SE0u9ZQa.net]
日本語で

480 名前:デフォルトの名無しさん [2018/10/14(日) 21:46:06.36 ID:WLfX4fFS.net]
その理屈だと一回呼んで戻ってきたら使えることになるな

481 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 21:48:40.36 ID:FWr9wKhu.net]
>>455
あー
そのはっそうは なかったw

450のかき方(インデントは正しくできているものとしてクレン)したら、
func1の中でしかreのimportは効いてナインかな

482 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 21:53:34.20 ID:FWr9wKhu.net]
ちょっとちゃんと実験してみるは... 三 ( ´D`)

483 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 21:59:28.27 ID:FWr9wKhu.net]
( ・∀・)ノフォラァヨ!!---===≡≡≡ ttp://dpaste.com/18SSZEP :main内でエラーするかきかた



484 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 22:03:32.75 ID:FWr9wKhu.net]
つづき
ttp://dpaste.com/17A5RJ3 :やっぱりmain内でえらーしますた (この はっそうは なかった)

けつろん
 >453の注釈はまちがいまくりだな!ゲヒャ(∀・∀)
 >>455の疑問はどんぴしゃごもっともだった

485 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 22:19:11.86 ID:FWr9wKhu.net]
けつろん

> 450のかき方(インデントは正しくできているものとしてクレン)したら、

func1の中でしか
reのimportは効いてナイン

486 名前:デフォルトの名無しさん [2018/10/14(日) 22:21:07.83 ID:OWtIHbk2.net]
importされたモジュールはimport 文が表れるスコープのローカル名前空間で名前を定義される

https://docs.python.org/ja/3/reference/simple_stmts.html#import

487 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 22:52:00.55 ID:FWr9wKhu.net]
>>461
ありがとーん

488 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 22:53:21.18 ID:O0tCb1jZ.net]
結局スコープ内でしか有効じゃないから確かめる方法は無いってこと?

489 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 22:53:49.91 ID:jLw0xcfm.net]
たいへん勉強になりますた。

490 名前:デフォルトの名無しさん [2018/10/15(月) 04:25:17.24 ID:0W4mw5Ny.net]
>>463

>>452
キャッシュで判る

実行前にキャッシュを消して
実行後にキャッシュが出来ているかを見れば
読み込まれたか無視してるかは判る

491 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 08:59:02.58 ID:pyA/8yHB.net]
キャッシュはどうやって見れますか?
mainでキャッシュ見れる関数を書くのですか?

492 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 09:32:04.81 ID:vNVpiBIf.net]
マジでアホの考えなんとやらだ
importするとクラッシュするモジュールを用意して
func1からimportしてみりゃーいいだろ
クラッシュすればimportされてるし、しないならimportされていない

493 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 09:56:16.94 ID:XOcEM3KA.net]
importするとクラッシュするモジュールが発見出来ませんでした・・
よければ名前を教えて貰えますか?pipで入れられたらなおありがたいです。



494 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 09:57:31.08 ID:vNVpiBIf.net]
いや、自分で書けばいいだろ
馬鹿が

495 名前:デフォルトの名無しさん [2018/10/15(月) 10:31:21.43 ID:/DZZgAIK.net]
importするmoduleを自分で書くなら
moduleの初期化時にprint('読まれたよ!')って書いて置けば桶

496 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 12:38:01.14 ID:A4+xGAqj.net]
なんなの遊園地?

497 名前:デフォルトの名無しさん [2018/10/15(月) 16:32:59.34 ID:13a7w8hI.net]
>>470
天才現る!

498 名前:デフォルトの名無しさん [2018/10/15(月) 18:05:35.02 ID:5iEXqQwD.net]
>>463
スコープ内で有効だから確かめられないではなくグローバル変数にすれば良いのでは

def func():
import re as _re
global re
re = _re

def main():
func() #コメントアウトするとprintでエラー
print(re)

499 名前:デフォルトの名無しさん [2018/10/15(月) 18:19:51.97 ID:/DZZgAIK.net]
def main():
#func() #func()無関係にprintでエラー
import re as _re
print(re)

500 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 21:29:43.28 ID:E6pr56BO.net]
 私たち日本人の、日本国憲法を改正しましょう。
総ム省の、『憲法改正國民投票法』、でググって
みてください。拡散も含め、お願い致します。

501 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 21:35:11.02 ID:E6pr56BO.net]
 私たち日本人の、日本国憲法を改正しましょう。
総ム省の、『憲法改正國民投票法』、でググって
みてください。拡散も含め、お願い致します。

502 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 17:08:42.26 ID:u7YyW5Kg.net]
自作クラスのインスタンスが持ってる変数を全て、保存しておいた値に戻すようなコードを書きたいのだけれど、どうやって書けばいいかな?
ある時点の値にロールバックしたいということなのだけれど、継承していてもちゃんと動作するようにしたい
想定している処理はこんな感じ

class A:
 def rollback(self):
   全部のインスタンス変数を self.backup の値に戻す

 def make_backup(self):
   self.backup = バックアップを作成

class B(A):
 def proc(self):
   self.make_backup()
   # なんか処理
   self.rollback()

設計が悪いと感じたらなにか代替案を教えていただければ嬉しいです

503 名前:デフォルトの名無しさん [2018/10/16(火) 18:16:27.10 ID:YLHbxnbG.net]
pickle



504 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 18:24:52.10 ID:LVmCdvc6.net]
あの、プログラム終わったら次のプログラムを起動したいのですがどうやったら開けますか?
最後にはシャットダウンしたいです。

p1.py実行
→最後の行でp2.pyを呼び出す
→p2.py実行
...
→最後の行でpn.pyを呼び出す
→pn.py実行
→最後の行でシャットダウン

こんな感じでやりたいです。

505 名前:デフォルトの名無しさん [2018/10/16(火) 18:28:08.45 ID:YLHbxnbG.net]
subprocess.Popen

506 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 18:32:15.10 ID:LVmCdvc6.net]
ありがとうございます、できそうです。

507 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 18:34:41.31 ID:+Y6Wm7U2.net]
パイパイを実行?

508 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 21:07:08.91 ID:uMB0oNTu.net]
>>479
それチェーンにしないとダメなの?
普通にp1.py, p2.py, ..., pn.pyを次々に呼び出して最後にシャットダウンするシェルスクリプトなり

509 名前:バッチファイルなりを書けばいいような気もするんだが []
[ここ壊れてます]

510 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 11:21:44.01 ID:tSH31TrF.net]
>>477
グローバル変数使うんじゃだめ?

511 名前:デフォルトの名無しさん [2018/10/17(水) 11:49:20.45 ID:LtC7K5yP.net]
ORM

512 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 12:47:48.23 ID:tSH31TrF.net]
>>477
>>484です。知ったかぶりしてすみません。グローバル変数ではなくクラス変数でした。
test.pyで
class MyClass:
  commonVALUE=0
  def __init__(self,initv):
    self.value=initv
  def p(self):
    print(f'instance value= {self.value}')
    print(f'class value= {MyClass.commonVALUE}')
  def bkup(self):
    MyClass.commonVALUE=self.value
  def bkload(self):
    self.value=MyClass.commonVALUE
としといて
>>> from test import *
>>> a=MyClass(100)
>>> b=Myclass(0)
>>> a.bkup()
>>> b.p()
instance value= 0
class value= 100
>>> b.bkload()
>>> b.p()
instance value= 100
class value= 100
この後で
>>> c=MyClass(-1)とあらたにインスタンスを作っても
>>> c.p()
instance value= -1
class value= 100
で、クラス変数は0にはならないみたい。

513 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 13:06:09.93 ID:tSH31TrF.net]
行数制限のため連投ですみません。
継承も大丈夫です。
>>> class B(MyClass):
...   def dec(self):
...    self.value-=1
>>> d=B(1)
>>> d.p()
instance value= 1
class value= 100
>>> a.bkup()
>>> d.p()
instance value= 1
class value= 100
>>> d.bkload()
>>> d.dec()
>>> d.p()
instance value= 99
class value= 100



514 名前:デフォルトの名無しさん [2018/10/17(水) 13:31:27.53 ID:LGIAN4QA.net]
pickle

515 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 13:35:53.65 ID:cWz6TRDk.net]
>>486
それじゃクラス共通になってまうやん
インスタンス毎にバックアップデータ持てないから意図と違うと思う
>>477 で良いと思うけど、何を懸念してるのかを書くともっといい案をもらえそう

516 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 17:07:18.34 ID:tSH31TrF.net]
>>489
クラスと継承クラス共通でバックアップって意味じゃないの? そりゃスマンコってす
...
各インスタンスごとのバックアップを作って、一括でpush/popしたいなら、
リストの要素を各インスタンスをにしといて、
for i in in instance_list:
 i.backup()
とかにすればいいだけなんでねの?

517 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 10:08:35.95 ID:0gY6dccD.net]
>>490
push-popと言いながらプログラムはpush-popじゃないのはわざと?

518 名前:デフォルトの名無しさん [2018/10/18(木) 16:41:15.03 ID:551Ojw2f.net]
def 関数(arg1,arg2):
ゴニョゴニョ


return ←これが全く理解できないんだけど、目からウロコみたいなページみたいなのないです?


returnが入ると全くわからない。

519 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 07:14:22.21 ID:97FgwNUY.net]
codecs.openて普通のopenより処理重いきがするんですが認識あってるかね?
2.7使ってて文字コード指定で100mb前後のtxtなりcsvてり触りたいんだけど通常のopenでは文字指定出来ず、ioモジュールのopen使うと他のライブラリで使ってるopenの挙動がおかしくなる(?)し、codecs遅いしでどうするのがスマートなのかわからん

520 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 08:17:42.62 ID:5hJcbR3H.net]
codecs.openを使う
そもそもopenに追加処理をしてるのだから、重くて当たり前だろう

521 名前:デフォルトの名無しさん [2018/10/19(金) 12:51:38.13 ID:jQ8EJjtV.net]
> 488
https://youtu.be/neqp_mK1PWM#t=4694s

522 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 14:00:43.26 ID:aYMp4dZA.net]
https://github.com/michaldaniel/Ebook-Viewer
こちらのgitで公開されているLinux用epubビューアを改造して使いやすくしようと思っているのですが、
行き詰まってしまいました。
ブラウザの戻るボタンのようにリンク先(引用元など)に飛んだ後、直前に戻るボタンを実装したいのですが
(ボタンはgtk3の都合上up arrowボタンを使っています)
改造したのはheader_bar.pyでして、

def __populate_headerbar(self):
(途中省略)
# Adds up arrow chapter navigation button
self.up_arrow_button = Gtk.Button()
self.up_arrow_button.add(Gtk.Arrow(Gtk.ArrowType.UP, Gtk.ShadowType.NONE))
self.up_arrow_button.set_sensitive(False);
self.up_arrow_button.connect("clicked", self.

523 名前:__on_up_arrow_clicked)
navigation_box.add(self.up_arrow_button)
(途中省略)
def __on_up_arrow_clicked(self, button):
"""
Handles Up Arrow clicked navigation event, go backward
:param button:
"""
if viewer.Viewer.can_go_back():
viewer.Viewer.go_back()

とすると、
WebKit.WebView.can_go_back() takes exactly 1 argument (0 given)
というエラーがでてしまいます。
(viewer.Viewerはwebkitを継承したものです)
どなたかお知恵をお貸し願えたら幸いです。
[]
[ここ壊れてます]



524 名前:デフォルトの名無しさん [2018/10/20(土) 14:07:46.36 ID:u8BRF3D8.net]
99blues.dyndns.org/blog/2010/01/pywebkit/

525 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 14:24:18.46 ID:n6bj2eyU.net]
>>496
インスタンスメソッドをクラスメソッドみたいにして読んでるから、第一引数として暗黙的に渡されるはずだったselfが足りないって怒られてる。

ソースを斜め読みするとViewerのインスタンスはインスタンス構造上の親であるMainWindowが持っているようなので、
self.__window.viewer.can_go_back()でアクセスできるんじゃないかな

526 名前:493 mailto:sage [2018/10/20(土) 15:04:15.12 ID:aYMp4dZA.net]
>>498
if self.__window.viewer.can_go_back():
self.__window.viewer.go_back()

と書いてやってみたらエラーメッセージはでませんでしたが画面が真っ白になってしまいました。
とはいえ、当初のエラーは解消したので大きな進歩です。どうもありがとうございました。
後は勉強がてら自分でやってみます。

527 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 15:04:58.12 ID:aYMp4dZA.net]
>>497
さんもレスありがとうございました。

528 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 18:30:22.23 ID:V2vR4ZZl.net]
>>492
defがここでおしまいですよ 呼び出し元にかえりんしゃー

という意味

529 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 18:31:25.93 ID:V2vR4ZZl.net]
>>493
from codecs import open as codecsopen
とかやって、
codecsまるごとじゃなくcodecs.openだけ読むようにすればちょっとははやくできる
ちょっとは。

530 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 23:03:44.42 ID:bT6j7LGV.net]
素人質問で申し訳ないのですが助けていただきたく質問します。

いま「みんなのPython」をやりはじめたのですが
Anacondaがうまくできません

最初に普通?のPythonをインストールして
そのあとにPythonをアンインストールしたあと
Anacondaをインストールしました。
そして「ファイル名を指定して実行」で「python.exe」と入力しても
「'python.exe'が見つかりません」となってしまいます。
Windows PowerShellで「>python」と入力しても
「用語 'python' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません」
となってしまいます。

Anacondaのインストールでは
「Add Anaconda to my PATH environment variable」にはチェックは入れてません
「Register Anaconda as my default Python 3.6」にはチェックを入れました。

531 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 23:37:57.82 ID:aY20u7RH.net]
英語よめや。

532 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 23:54:05.62 ID:bT6j7LGV.net]
>>504
環境変数PATHを設定する | Pythonインストールと環境設定
https://www.javadrive.jp/python/install/index3.html

このサイトに書いてあるようにやったらできたんですけど
これでいいんですか?

533 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 01:14:29.19 ID:uxH9lXGD.net]
カレントフォルダからは「相対パス/python.exe」で実行できる。
カレントフォルダ以外からも実行したいのなら「絶対パス/python.exe」で実行できる

カレントフォルダ以外からも「python」というコマンドで実行したいのなら、
「python.exe」のあるフォルダを、ユーザー環境変数PATH に登録しないといけない

例えば、コマンドプロンプトで、以下のように入力すると、
where notepad
where python

そのコマンドの実行ファイルのある、場所を表示できる



534 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 06:47:31.22 ID:EmL9QD5v.net]
はじめまして ラズパイでpythonを利用してます。
Python3 ide?でファイルを実行するとmoduleエラーが起

535 名前:きるんですけど、lxterminalで実行したりcronで実行するとエラーはでないで実行できます。
実行できるので問題ないのですが、なんでpython3 ideで実行するとmoduleエラーになるのかが気になります
詳しい方 お気づきがあれば教えてください
[]
[ここ壊れてます]

536 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 07:07:12.22 ID:EmL9QD5v.net]
追加ですが温度センサー使ってます。githubからすべて入手したものです。
ググってもなぜかエラー出るよみたいなことが書かれていて原因は不明だったのでお聞きしました。

537 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 10:24:36.04 ID:d2CNB2CT.net]
Python3でのsqlalchemyについて教えてください

https://ideone.com/tVSjwB

56行目のsession.commit()でエラーになってしまいます。

sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) CHECK constraint failed: winners
[SQL: 'INSERT INTO winners (name, category, year, nationality, sex) VALUES (?, ?, ?, ?, ?)']
[parameters: ('Marie Curie', 'Chemistry', 1911, 'Polish', 'Female')] (Background on this error at: sqlalche.me/e/gkpj)

こんな風に書かれてあります。(長いのでここに書くときに改行しました)
何がいけないのでしょうか?

538 名前:デフォルトの名無しさん [2018/10/23(火) 10:29:07.79 ID:ki4w8hD+.net]
>>507
同じPythonを実行してる?(公式の純正PythonとAnacondaとか)

539 名前:デフォルトの名無しさん [2018/10/23(火) 10:35:04.61 ID:ki4w8hD+.net]
>>509
yearはStringじゃなくてIntegerじゃ…?

540 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 10:40:12.34 ID:d2CNB2CT.net]
>>511
ほんとだ!あと、リストのMarieの性別も頭が大文字になってました。
凡ミスなのにありがとうございます!

541 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 10:45:40.79 ID:d2CNB2CT.net]
>>509
あと、29行目の%の所でpep8のE228の注意が出てしまいます。

%の前後にスペースを入れて、こう書くのが正しいんでしょうか?
https://ideone.com/qhYas5

542 名前:デフォルトの名無しさん [2018/10/23(火) 10:48:34.83 ID:ki4w8hD+.net]
>>513
その方がpep8に則ると正しいね

543 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 10:56:47.49 ID:zGwQ/J/L.net]
>>514
どうもありがとうございました



544 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 11:09:52.98 ID:zGwQ/J/L.net]
連投すみません

SQLAlchemyでのデータベースへのアクセスについてですが、filterとfilter_byってどう使い分けするんでしょうか?
違いが分からないです

# スイス人受賞者の取得

# filter_by の場合
result = session.query(Winner).filter_by(nationality='Swiss')

# filter の場合
result = session.query(Winner).filter(Winner.nationality == 'Swiss')


print(list(result))

545 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 11:13:00.78 ID:aeA+1VC2.net]
gtk3とpythonのpygobjectで質問があります。
https://stackoverflow.com/questions/41696515/webkit2gtk-webview-touchscreen-scrolling
こちらの質問にあるとおり、webkit2gtkを使うとlibwebkit1-3.0の時のようなタッチスクリーンによる
スクロールができなくなってしまうのですが、何とかタッチによるスクロール(パンというようですが)
をしたいのです。こちらの質問者の方はコールバック関数にスクロールイベントを書いたらできたと
書いてありましたが、具体的にはどのように記述すれば良いのでしょうか?

https://lazka.github.io/pgi-docs/

こちらのpygobjectのAPIを見てもよくわかりませんでした。どうかよろしくお願いします。

546 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 11:16:03.36 ID:zGwQ/J/L.net]
>>516ですけど、
ふた通りの書き方があるよ、Pythonらしく、より簡単に書く方法はfilter_byの方だよって事ですかね?

547 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 12:43:50.18 ID:EmL9QD5v.net]
>>510
同じpythonです。ラズパイにはじめからはいってるやつです。
ほんと謎
パスかなと思ったけど動いてるから違うんやとおもうけど

548 名前:デフォルトの名無しさん [2018/10/23(火) 13:18:18.96 ID:ki4w8hD+.net]
>>518
軽くググッてから投稿してみよう
https://stackoverflow.com/questions/2128505/whats-the-difference-between-filter-and-filter-by-in-sqlalchemy

549 名前:デフォルトの名無しさん [2018/10/23(火) 13:20:20.07 ID:ki4w8hD+.net]
>>519
バージョンも同じなら、理由はわからんなぁ…

550 名前:デフォルトの名無しさん [2018/10/23(火) 17:07:59.89 ID:J7zWeAP4.net]
みんなやさしいな

551 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 18:06:12.08 ID:Afmb5nM2.net]
別のフォルダに入った同名ファイルをjoblibのParallelで処理するために以下のようなコードを書いたところ1番目のフォルダの結果が常に出てきてしまうんだけど原因分かる?

・環境
Python: 3.7.0
joblib: 0.12.5
Jupyter Notebook上で実行

・ファイル
C:\a\a.txt -> 「1」とだけ半角で書かれたテキストファイル
C:\b\a.txt -> 「2」とだけ半角で書かれたテキストファイル

・コード
import numpy as np
from joblib import Parallel, delayed

# 実際はもっと大容量のファイルに対して重い処理を行う
def read_file():
return np.loadtxt("a.txt")

os.chdir(r"C:\a")
result1 = Parallel(n_jobs=-1)(delayed(test)() for _ in range(1))

os.chdir(r"C:\b")
result2 = Parallel(n_jobs=-1)(delayed(test)() for _ in range(1))

# 空のフォルダcに移動する
os.chdir(r"C:\c")
result3 = Parallel(n_jobs=-1)(delayed(test)() for _ in range(1))

print(result1) # 出力 : [array(1.)]
print(result2) # 出力 : [array(1.)]・・・[array(2.)]が出力されないのはなぜ?
print(result3) # 出力 : [array(1.)]

552 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 22:14:21.56 ID:86mV9f+c.net]
ファイルの数を返すメソッドはありますか?
例えばsrcの下にディレクトリaとbがあって
それぞれのディレクトリにa1.txt〜a100.txt、b1.txt〜b100.txtとファイルがあった時に
200と返してくれるメソッドはありますか?
defで関数とか作らず1行で済む方法を探しています。

553 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 22:22:44.49 ID:zYWUn764.net]
len(os.lisdir(ディレクトリのpath))



554 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 22:36:02.00 ID:BDP8ufz9.net]
いまやってみたらそのコードでは2が帰って来ました
aとbの2つのディレクトリがあるから2なのですかね?
欲しいのはそのまた下にあるファイルの数でした

555 名前:デフォルトの名無しさん [2018/10/23(火) 22:46:04.08 ID:oFF/C26V.net]
Pythonは詳しく無いけど、そう言うは再帰でディレクトリが無い最下層まで潜るコードってよく見るね。

556 名前:デフォルトの名無しさん [2018/10/23(火) 23:35:56.37 ID:EZC/vVVW.net]
>>524
import glob
len(glob.glob(“**/*”, recursive=True))

557 名前:デフォルトの名無しさん [2018/10/23(火) 23:36:52.55 ID:EZC/vVVW.net]
src/**/* だったわ

558 名前:デフォルトの名無しさん [2018/10/23(火) 23:53:26.39 ID:BmpWcPqj.net]
>>524
sum([len(files) for root, dirs, files in os.walk("src")])

559 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 00:12:08.40 ID:2LYWqLo0.net]
>>507
パス・カレントディレクトリとか、起動時オプションとか。
別の実行ファイルを起動しているとか

IDE の前提条件は、プロジェクトごとだろ。
プロジェクトフォルダ・プロジェクト設定ファイルありきだろ。
プロジェクトの条件を満たしていないのかも?

プロジェクトとシェルから実行する形式とは、異なるような気がする

そのエラーメッセージをここにも書いて、それで検索すれば?

>>516-520
「python sqlalchemy filter vs filter_by」で検索!

560 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 00:33:01.65 ID:2LYWqLo0.net]
>>524-530
ls -1UR | wc -l

「linux ファイル数 ディレクトリごと」で検索!

561 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 00:58:29.86 ID:2LYWqLo0.net]
>>517
「gtk webkitwebview」で検索!

562 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 15:19:12.25 ID:B3/hQHxI.net]
521,523です
教えていただいたのをやってみました。
525さんの方法は、フォルダーの数が含まれていました。結果は202が返りました。
527さんの方法は、ちょうど200が返りました。
529さんの方法は、windowsなので出来ませんでした。

これにて問題は解決しました。皆さまありがとうございます。

563 名前:514 mailto:sage [2018/10/24(水) 17:55:05.58 ID:Vc8wznQf.net]
https://webkitgtk.org/reference/webkit2gtk/stable/WebKitWebView.html

>Note that WebKitWebView is scrollable by itself, so you don't need to embed it in a GtkScrolledWindow.

って書いてありました。スクロールをGtkで担当していないから、他のgtk3アプリのようにタッチでスクロールできないようです。でも、だったらなんで>>517のリンク先の人はGTK.gestureでできたんだろう・・・



564 名前:デフォルトの名無しさん [2018/10/24(水) 18:10:34.94 ID:95IsyUjL.net]
>なんといっても、800g弱とは思えない軽さと、
薄型コンパクトな筐体はタブレットと同様に、
「出番はないかもしれないけど常時携行しても良い」レベルです。


いざ使おうとすると windows update が始まって再起動…何時間も待たされる…鞄にしまう。

放置

「出番はないかもしれないけど常時携行しても良い」

また持ち出す

いざ使おうとすると windows update が始まって再起動…何時間も待たされる…鞄にしまう。

放置

565 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 18:40:13.35 ID:IR3xnlxd.net]
リストにn個の要素があります。
このリストの要素から2個をランダムに選んだペアをm組作りたいです。
ただしペアを重複しないようにしたいのですが、
どうすれば実装できるでしょうか。もしくはライブラリがありますか?
いくら考えてもペアが重複してしまいます。(特に(a,b)と(b,a)のようなペアが出来てしまいます)

n=[1, 2, ... n]
m=3
new_n=f(n, m)
new_n
=[(1,8), (45,n), (n-2, 20)]

みたいになるfを探しています。

566 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 18:54:46.79 ID:Uqd3UckS.net]
>>537
itertools

567 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 18:57:07.94 ID:K3Hn81Y7.net]
リストの中身をシャッフル→前から二つずつ取得

568 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 18:57:08.14 ID:Uqd3UckS.net]
>>535
ここで回答を待つよりリンク先に直凸したほうがはやいきががが

Why could you "scroll" with GTK.gesture?

569 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 19:10:02.77 ID:TphPHDjb.net]
scrapyとXParhについて教えてください

https://ideone.com/af79WT
うまく動いてくれないです。

67行目からの関数が間違えてると思うんですが、77行目のp_templateはどう書くのが正しいんでしょうか?

9行目は
# https://github.com/Kyrand/dataviz-with-python-and-js

17行目は
BASE_URL = 'en.wikipedi

570 名前:a.org'

40行目は
start_urls = ["https://en.wikipedia.org/wiki/List_of_Nobel_laureates_by_country"]

80行目は
# https://www.wikidata.org/wiki/Q155525

です。
[]
[ここ壊れてます]

571 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 19:14:14.74 ID:IR3xnlxd.net]
>>538
これは指定した組み合わせ数に達

572 名前:したら中断する方法はありますか?
実際にはnとmが両方4000程なので、nC2を全て取得するのは冗長と思われるので・・
とはいえやりたいことにとても近いのでありがとうございます。

>>539
実際にはm>n/2となるので難しいと思いました。
すみませんこちらの例題が悪かったですね・・
[]
[ここ壊れてます]

573 名前:デフォルトの名無しさん [2018/10/24(水) 19:14:37.21 ID:/bxb9sB2.net]
>>537
itertoolsとrandom



574 名前:.sampleを組み合わせる
import itertools, random
def pair(n, m):
combi = list(itertools.combinations(n, m))
return random.sample(combi, m)
[]
[ここ壊れてます]

575 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 19:51:07.40 ID:8aeYqShI.net]
>>509
これ、モジュールを入れてますが、ideoneで外部モジュールってどうやって使うんです?






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

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

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