くだすれPython(超初心者用) その37at TECH
くだすれPython(超初心者用) その37 - 暇つぶし2ch347:デフォルトの名無しさん
18/04/15 12:06:53.97 VXOW+WoG.net
この本が、定本。
みんなのPython 第4版、2017
Python は、Ruby よりも難しい。
先に、この本を読め
たのしいRuby 第5版、2016
北大の湊真一が作った、ZDD なら、Ruby gem もある

348:デフォルトの名無しさん
18/04/15 12:23:12.55 E1b18XLI.net
>>336
webサイトで充分

349:デフォルトの名無しさん
18/04/15 12:33:40.04 Y8r4uZmH.net
パイチンくんの本がいっぱい出すぎで
どれを買っていいかわからないよ
みんなのパイチンくん
スラスラわかるパイチンくん
パイチンくん1年生
いちばんやさしいパイチンくんの教科書
いきなりパイチンくん
やさしいパイチンくん
パイチンくんからはじめる数学入門
独習パイチンくん入門
ホンキで覚えるパイチンくん
パイチンくん機械学習プログラミング

350:デフォルトの名無しさん
18/04/15 12:36:21.44 VXOW+WoG.net
「みんなのPython」が定本
そこへ、なでしこの作者・クジラ飛行机が参入した。
そこへ掌田津耶乃・大津真などの、多言語の作者も参入

351:デフォルトの名無しさん
18/04/15 12:45:05.14 E1b18XLI.net
rubyの本も急に沢山出た時期があるけど
流行りで出てくる本の九割以上は糞本
スルーでOK

352:デフォルトの名無しさん
18/04/15 13:27:09.55 BcrfAPr/.net
まあ流行りで本が沢山出るならまだ良い方だよ。それだけ売れるってことで、それはつまりやってる人が多いということだから。

353:デフォルトの名無しさん
18/04/15 13:35:32.50 fpkgMDqC.net
ディレクトリを指定してその中にあるファイルのパスをリストで取得できるモジュールとかないですか?

354:デフォルトの名無しさん
18/04/15 13:51:11.42 VXOW+WoG.net
Ruby なら、Dir.glob だけど、
「python list dir glob」で検索!

355:デフォルトの名無しさん
18/04/15 13:58:56.84 K+msyNFc.net
rubyが廃れた理由が分かるな。
いやrailsのバッテリーとして余生は安泰かwww

356:デフォルトの名無しさん
18/04/15 14:28:51.90 bGi543fi.net
Pythonではタブ記号の代わりにスペースを使う人が多いですが移動が面倒です。
タブ記号だと例えば、インデントが4つあっても4回の右キーを押すだけで移動できますが、
スペースの場合、16回くらい押す必要がありますよね。
どのようにしたらいいでしょうか?
エディタは秀丸を使っています。

357:デフォルトの名無しさん
18/04/15 14:30:19.66 Cnmy+aq2.net
>>347
・Sakuraエディタにのりかえる
・インデント機能を使った後、Tab->空白機能を使う

358:デフォルトの名無しさん
18/04/15 14:40:56.80 bGi543fi.net
>>348
Sakuraエディタは使ったことないけど、多分秀丸にも同じ機能はあると思うが、
タブにスペースを使うことが問題で
タブがスペースだと結局は16回、もしくは、ショートカットキーで飛ぶことになり面倒でない?
Tab->空白変換 機能は使ってるけど、
サンプルプログラムと手書きを何度もやりとりしてると
タブとスペースの混在で結構良い頻度でエラーになってしまう
統一したいと思ったり・・・

359:デフォルトの名無しさん
18/04/15 14:46:01.79 5EOPJhuZ.net
今時秀丸?
VSCodeとか使おうよ

360:デフォルトの名無しさん
18/04/15 14:47:30.46 CMfqpLbm.net
>>349
pythonファイルならスペース4つを一回で移動できるエディタたくさんあるよ

361:デフォルトの名無しさん
18/04/15 14:57:48.74 fpkgMDqC.net
>>345
globってそういう時に使うのですか
サンクス

362:デフォルトの名無しさん
18/04/15 15:27:17.39 Cnmy+aq2.net
>>349
うちは秀丸の設定で1タブ4半角スペース固定にしてる
それで
書いたらはしらせる直前に
全選択して Tab->空白

363:デフォルトの名無しさん
18/04/15 15:37:38.38 731FtqJf.net
ソフトタブだっけ?
俺Atomだけどスペース混在がどうのとか気になったことない

364:デフォルトの名無しさん
18/04/15 16:10:57.24 Cnmy+aq2.net
今ってたしか
タブとスペースの混在は('A`)ヴァーで
タブは(・A・)イクナイ
スペース4つにしましょうキャンペーン中じゃなかったっけ

365:デフォルトの名無しさん
18/04/15 16:22:10.02 7xK+P7p1.net
秀丸最強

366:デフォルトの名無しさん
18/04/15 16:25:40.21 7xK+P7p1.net
>>344
os.walk()
os.path.walk()
os.listdir()

367:aiueo
18/04/15 16:44:03.35 xfCmajNI.net
windows10
Python 3.6.5 C:\pythonにインストール済み
pip install -U selenium でseleniumインストール済み
ChromeDriver 2.37 インストール済み 
C:\chromedriverに入れて、Pathも通しました
aiueo.pyを作って、C:\myscriptフォルダに入れています
中身は、下になります
from selenium import webdriver
driver = webdriver.Chrome()
これを実行すると、
C:\myscript>python aiueo.py
Traceback (most recent call last):
File "aiueo.py", line 1, in <module>
from selenium import webdriver
File "C:\python\lib\site-packages\selenium\webdriver\__init__.py", line 18, in <module>
from .firefox.webdriver import WebDriver as Firefox # noqa
File "C:\python\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 20, in <module>
import http.client as http_client
File "C:\python\lib\http\client.py", line 72, in <module>
import email.message
File "C:\python\lib\email\message.py", line 10, in <module>
import uu
File "C:\myscript\uu.py", line 7, in <module>
options = webdriver.ChromeOptions()
AttributeError: module 'selenium.webdriver' has no attribute 'ChromeOptions'
エラーで実行できません。。助けてください

368:aiueo
18/04/15 17:08:28.73 xfCmajNI.net
できたー!!エラー治りました!
同じフォルダに入っていた、uu.pyというファイルを消したところ治りました
なぜ消したら治ったのか原因がよくわかりません
uu.pyをフォルダに入れると、またエラーが発生します
作っちゃいけないファイル名などがあるのでしょうか。。

369:デフォルトの名無しさん
18/04/15 17:21:04.60 CIuag2/D.net
>>359
ライブラリと同じファイル名使ってるだけ
URLリンク(docs.python.org)

370:aiueo
18/04/15 17:30:47.57 xfCmajNI.net
>>360
ありがとうございます。もともとuu.pyというファイルがあったのですね
適当にaa.py test.py cc.py kkk.pyとか適当ファイルいろいろ作って試してました・・
勉強になりました、ありがとうございます

371:デフォルトの名無しさん
18/04/15 17:45:04.14 CIuag2/D.net
>>361
ライブラリ作ってるならこの辺りも見ておいた方がいい
URLリンク(docs.python.org)

372:aiueo
18/04/15 17:51:34.26 xfCmajNI.net
>>362
プログラミングやったことない超初心者です。
スクレイピングでやりたいことがあるのでpythonインストールしてみました。
ライブラリとファイル名、かち合わないように気を付けます
わざわざありがとうございます!

373:デフォルトの名無しさん
18/04/15 18:14:44.88 WdW8h5cl.net
openpyxlを使ってExcelファイルのA2セルの値を取り出そうとしたんだけど
そのセルに書かれている計算式が取り出せました。
計算式ではなく、計算結果を取り出すにはどうしたらよいの?
こう書きました→print(ws['A2'].value)

374:デフォルトの名無しさん
18/04/15 18:33:21.95 5wGddKlA.net
>>364
使ったことないけどここら辺の話かな?
URLリンク(cloudsquare.jp)

375:デフォルトの名無しさん
18/04/15 22:39:51.61 UX4y5Mn1.net
ありが㌧

376:デフォルトの名無しさん
18/04/15 23:29:55.35 9jzNqCls.net
長文になって申し訳ないけど、メソッドに関する質問。
1.Pythonで始めから使えるメソッド(.replace()とか)に呼び名はある?
 ビルトインメソッド?、ビルトイン関数?、メソッド?それとも他の呼び名?
2.help()関数のようにビルトインメソッド(仮)の定義を見ることはできるか?
 print(help(replace))と入力すると
 >>>NameError: name 'replace' is not defined となるため見れない
3.ビルトインメソッド(仮)はなぜ存在しているのか?ビルトイン関数で代替できないのか?
 メソッドがオブジェクト指向版の関数という自分の解釈なら、
 メソッドはライブラリかユーザー定義用だけにしておいて、
 ビルトインオブジェクト(クラス)のメソッドなんて用意するべきではないと思うから。
以上3点です。よろしくお願いします。

377:デフォルトの名無しさん
18/04/15 23:32:53.30 xpwShDOv.net
help(str.replace)

378:デフォルトの名無しさん
18/04/15 23:42:33.10 9jzNqCls.net
>>368
ほんとだ。ありがとうございます。
メソッドを呼び出す際は、ここでもオブジェクトが必要だったんですね。
そして、print()関数は不要でしたねすみません。

379:デフォルトの名無しさん
18/04/15 23:44:00.12 xpwShDOv.net
1.間違い
3.何が言いたいのか意味が判らない

380:デフォルトの名無しさん
18/04/16 00:48:43.62 +F/asDGP.net
>>370
1.はクラスメソッド、スタティックメソッドのことを言っているような気がするが、
XXXclass.replace()なクラスメソッド、スタティックメソッドはあったっけな感じだが....
>>367
3.に関してはPythonを作っている奴らにきくのが一番良い
ついでにjava,rubyも同様だからjava,rubyスレでも尋ねたほうが良いかも

381:遊園地
18/04/16 07:50:52.76 AgptP9w5.net
>>367
3
クラス継承したら良いと思う。

382:デフォルトの名無しさん
18/04/16 12:31:15.81 xRFNapub.net
ビルトイン型のメソッドはその型固有の機能だから
ビルトイン関数とは用途が違うんじゃないの

383:デフォルトの名無しさん
18/04/16 13:13:36.14 qlfABgAK.net
Ruby では、継承できて、インスタンスを作れる、class と、
継承もできず、インスタンスも作れない、module の2つがある
classに、moduleをインクルードして、機能を付け加えることを、Mix-in と言う
module内の関数は、多くのクラスで使えるような、汎用的なもの

384:遊園地
18/04/16 16:33:02.84 AgptP9w5.net
Recognizing hand-written digits
 画像ファイルを読み込んで結果だけ取得したい。
どの様なコードになりますか?
この場合は、421です。
URLリンク(fast-uploader.com)

385:デフォルトの名無しさん
18/04/16 16:40:52.73 r1/f7Sud.net
captcha禁止

386:遊園地
18/04/16 17:43:27.26 AgptP9w5.net
これなら、大丈夫ですか?
URLリンク(fast-uploader.com)

387:デフォルトの名無しさん
18/04/16 17:56:18.32 ZFIHRn8x.net
>>376
ちなみに何で?

388:遊園地
18/04/16 18:50:38.80 AgptP9w5.net
>>378
URLリンク(animeflv.net)
OK? Low grade

389:デフォルトの名無しさん
18/04/16 19:33:30.30 gUfDVwYo.net
url見てから回避余裕でした。アニ豚死ね

390:デフォルトの名無しさん
18/04/16 20:14:00.57 5B9l6nEL.net
chainer_pix2pixを自前で用意した画像でやってみたんですが
updater.pyの70行辺りで
x_in[i,:] = xp.asarray(batch[i][0])
Exception in main training loop: Broadcasting failedというエラーが出ました
なんとかnumpyのコピーのエラーという事が分かったのですが
どう直したらいいのか分かりません・・・お助け下さい・・・
batch[0][0]とx_in[i,:]の中身の画像これです
URLリンク(imgur.com)
pix2pix
URLリンク(github.com)
ここの解説見ながらちょっとづつやってみたんですがほぼほぼわかってないです・・・。
URLリンク(spjai.com)
windows 10です

391:デフォルトの名無しさん
18/04/16 20:37:00.64 OxnvPd0M.net
エラーはわかるが、お前が何をやってるのか全くわからんから答える気にならん

392:デフォルトの名無しさん
18/04/16 21:02:19.87 5B9l6nEL.net
>>382
すいませんでした
参考にしたサイトにある魚の線画を描くと魚っぽい写真になるの逆で
カラーの線画のない画像から黒い線画を書かせるという事がやりたいです。

393:遊園地
18/04/16 21:06:58.35 AgptP9w5.net
失礼ww IQ220ぐらい有るんですけど
>>375
が解りません
 教えて下さい
URLリンク(fast-uploader.com)

ぶひぶひぃ ぶひうぃいぃぃぃぃいいっwwww
 ぶひぃいいいいいいいいいいいいいいいwwwwwwwwwww

394:デフォルトの名無しさん
18/04/16 21:26:32.35 M9Gf/bCG.net
プログラミング自体初心者&独学です
aizu online judgeを順に解いていっているのですが以下のコードでRuntime Errorが出てしまいました。
なにが悪いのかまったくわからないので教えてください!
URLリンク(judge.u-aizu.ac.jp)

pi = 3.14159265359
r = int(input())
area = pi*pi*r
length = pi*r*2
print('{:.5f}'.format(area),'{:.5f}'.format(length))

395:遊園地
18/04/16 21:31:05.09 AgptP9w5.net
計算式が違う

396:デフォルトの名無しさん
18/04/16 21:39:21.07 M9Gf/bCG.net
小学生からやり直します(汗)
以下に修正しても同じエラーになるんですがなぜでしょうか(泣)
pi = 3.14159265359
r = int(input())
area = r*r*pi
length = 2*r*pi
print('{:.6f}'.format(area),'{:.6f}'.format(length))

397:デフォルトの名無しさん
18/04/16 21:47:49.19 M9Gf/bCG.net
なんかこれで通りました。
import math
r = float(input())
pi=math.pi
s = ( r ** 2 ) * pi
l = 2 * r * pi
print(s, l)

398:遊園地
18/04/16 21:49:02.84 AgptP9w5.net
試したけど、受け取り値がint型だけど、実際のテストケースではフロート型

399:遊園地
18/04/16 21:53:12.17 AgptP9w5.net
既に解決してるけど、12.3が123として計算されてるな。

400:デフォルトの名無しさん
18/04/16 23:24:15.51 ovdjG7M8.net
>>390
ありがとうございました!

401:381
18/04/17 00:13:29.86 3Zz6leMl.net
>>382
すいませんどこまで何をやったか、という事ですよね???
解説サイトにあったものをfacade_dataset.pyに丸っと上書き保存して
色のみの画像500枚をfacade/labelフォルダー
線のみの画像を500枚をfacade/baseフォルダーにいれて
同じように評価用画像もtest_dにdetabaseからとれるようにちょっと変えて
python train_facade.py -g 0 -o image --snapshot_interval 100実行したところエラーがでたって感じです
(学習用と教師用の画像は500枚用意はしたんですが
動くかどうかも怪しいのでいまは三枚づつしかフォルダーに入れてません)

402:デフォルトの名無しさん
18/04/17 01:55:18.50 PvksN2Vg.net
>>392
なんかすごいことをやっているな。俺には出来るレベルの物ではないな。
ただ、>>381のコードはそっくりそのままgithubよりもって来た物なのか?
それとも何がしらの変更を加えている?
>>381は、コードはgithubのままだけどそれだとエラー出るからエラー出ないように修正したいてことかな
ひょっとしたら、中身の画像によっては要コード修正なのかもしれないのかもしれないが

403:デフォルトの名無しさん
18/04/17 04:43:58.56 QMWYQNUe.net
>>385
print(f'{area:.5f} {length:.5f}')

404:デフォルトの名無しさん
18/04/17 05:33:09.17 Z6U7XFnZ.net
>>381
ブロードキャスト出来ない状態だから、テンソル(numpyアレイ)の次元が合ってないんだろう
元ソースと自分のプログラムで両辺のshapeをプリントかデバッガで見て比較すれば間違えた箇所に気付くと思う
それでもダメ


405:なら、もっと簡単なmnistサンプルとかでnumpyの処理を勉強し直した方がいいかも



406:遊園地
18/04/17 11:03:58.69 nd6YqIWE.net
darknetで検出した結果だけをキャプチャーするのって、どうするの?
ダメなら、テラテイルで聞くわww

407:381
18/04/17 22:12:58.91 3Zz6leMl.net
>>393
いくつか変更というか、
どちらかが途中で変更されたみたいで
そのままだとエラー出る感じです
>>395
ありがとうございます
numpyほぼほぼわかってなかったので
numpy勉強して小さい画像サンプルで
元のと同じ条件でやってみたものと
自分のやってるものと比較してみます。
何をやっていいのかもわからなかったんで
書いてもらった単語調べるだけでヒントザクザクで助かります
ほんとありがとうございます

408:デフォルトの名無しさん
18/04/18 01:23:19.17 2l4GI+/x.net
chainerはデータのパックが面倒くさいからあまり好きじゃない
numpy→タプルデータセット→イテレータ→アップデータ→トレーナー
tensorflowはshape未定義のプレースホルダーのままテンソル演算をさせる所が分かりにくい
最終的にC++やC#のアプリに組み込みたい時はこれしかないけど
kerasはnumpyを縦ベクトル化してfit関数に渡すだけだから初心者向けで一番楽だと思う
日本語の解説本が少ないけどwebの記事はそれなりにあるはず

409:デフォルトの名無しさん
18/04/18 08:31:52.18 aHPh72wK.net
インポートエラー、format_excみたいなやつが永遠と出るんだがなぜでしょうか...
3日前から急に発症して、前回まで動いてたpyファイル全て実行できない...
python入れ直したり、anacondaで入れ直したりしたけど改善されないです

410:デフォルトの名無しさん
18/04/18 09:05:12.90 IyxAGhJK.net
何かが、自動update されたのかも
例えば、moduleA が、moduleB 2.2 に依存しているとする。
ここで、Bが2.3 に、updateされたため、Aが使えなくなったとか
それか、環境変数PATH を上書きしたとか

411:遊園地
18/04/18 09:54:49.07 EkJY2Tio.net
anaconda入れ直すしか無いなw

412:デフォルトの名無しさん
18/04/18 13:23:44.85 KAGSbSSN.net
Anacondaでトラブってるの見る度に気持ち良くなるわ
バカすぎ

413:デフォルトの名無しさん
18/04/18 16:20:24.68 WEKhN2py.net
数字や数字を変えながら、ちょっとスクリプトを作る場合、
def(サブルーチン?関数?) の場所について、物理的に下側にないとエラーが出てしまう
プログラムの書き換える度に、下までカーソルを動かさないといけないし
地味に不便なんだけど、何とかならない?

414:遊園地
18/04/18 16:39:07.37 EkJY2Tio.net
深層部にif __name__ == '__main__':を持ってくるか。
clss XX():
def YY()
処理
なら、clss XXのdef YYを
def YY()
処理
として、classから外す。

タスクバーが邪魔なら、非表示か移動
スクロールが無いなら、スクロールが有るエディターに変更する。
出力結果なら、外部ファイルに保存して確認する。

クリックしたら、クリックした文字の横に移動できる。

状況が解らない。
 スクショ上げてくれたら、何か言えるかもな。

415:デフォルトの名無しさん
18/04/18 18:50:18.12 RFL5vDmV.net
>>399
×永遠と
○延々と

416:デフォルトの名無しさん
18/04/18 23:23:28.17 YRBnqMM/.net
初めまして。
よろしければ回答お願いします!
大学でpython3を使いブロックスというゲームのプレイヤーAIを作ろうとしているのですが、効率の良い攻め方を実現する方法が分かりません。
盤面の状況次第で臨�


417:@応変に対処できるようにしたいです。 何か良いアイデアはないでしょうか。 因みにpythonを扱うのはこの授業が初めてです。 以下ブロックスの詳細です! http://saikoro-table.com/2016/12/05/blokus/



418:遊園地
18/04/18 23:32:03.53 EkJY2Tio.net
??
 ??? ?? ???

モンテ使って、機械学習で数百万回読み込ませば良い。

419:デフォルトの名無しさん
18/04/18 23:43:26.51 V0vvqvFn.net
alpha zeroのパクりならgithubにいくつか転がってるぞ

420:デフォルトの名無しさん
18/04/18 23:45:52.84 YRBnqMM/.net
>>407
すみません。自分含め班員もど素人しかいないので多分難しいです…

421:デフォルトの名無しさん
18/04/18 23:50:57.82 V0vvqvFn.net
難しくても丸パクりすればOK
理解は後からついてくる

422:デフォルトの名無しさん
18/04/18 23:57:41.25 V0vvqvFn.net
ちなみに素のモンテカルロ木探索だけだとあんまり強さが出ないかべらぼうな時間がかかる可能性があるので注意

423:デフォルトの名無しさん
18/04/18 23:58:42.71 YRBnqMM/.net
>>406
追記です。ボードの情報は board[X][Y]で与えられます。また、置ける場所をリスト?で返してくれる関数も与えられています。
ただこれをただ使ってるだけだと弱くて弱くて…笑
ということで、相手のピースとピースのつなぎ目を狙わせたいのですが、(そうすると強い)
いい方法解答お願いします。

424:デフォルトの名無しさん
18/04/19 00:03:06.90 K4+BGrIF.net
>>404
===test.py====
def learn(learn_mr,predict_mr):
maxrange = 15000
#・・・・・・・・・・・・
def iroiro:
maxrange = 15000
#・・・・・・・・・・・・
def iroiro2:
maxrange = 2
#・・・・・・・・・・・・
# def が大量に続く
###
input_file = 's1_x33x.txt' 例えばこの辺りを時々更新したい
f = open(input_file, 'r', encoding='utf-8')
Allf = f.read()
f.close()
Allf = Allf.replace("y","0 1 0 0 0") 例えばこの辺りを時々更新したい
row_step = 200
for row in range( row_step , 208900 ): 例えばこの辺りを時々更新したい
l_mr = mr[ row-row_step : row ]
p_mr = mr[ row : row+1 ]
dummy = learn(l_mr,p_mr)
dummy2 = iroiro(Allf)
print ("予備テスト完了")  例えばこの辺りを時々更新したい
###
エディタは秀丸で###と###の間を時々更新するばあい、言語によっては###間を先頭に書いて
下にサブルーチンをだらだら書いて必要に応じて呼び出す使い方ができるけどPythonだとどうすればいいかと思って
ショートカットキーで移動したり方法はあるけど、ファイルを開いてちょっと編集して閉じるみたいな使い方をすると意外とストレスで

425:デフォルトの名無しさん
18/04/19 00:20:52.00 4n9OXawP.net
>>403
関数の中にさらにインデントしたdefで関数を書けるから、ちょっとしたマクロっぽいことをしたい時は使う場所の近くに内部関数定義してる
あとは初心者には難しめだけどラムダ式とか

426:デフォルトの名無しさん
18/04/19 00:54:21.32 zrUS025p.net
>>413
このスレで有名になったperlさん?

427:遊園地
18/04/19 02:43:06.18 +uu+DOll.net
>>413
単純にリストにしたら?
[ [ファイル名], [置き換え] ]

classで纏めれるdefは纏める。
それから、継承して行く形かな。
URLリンク(ideone.com)
print部分を適当な配列に渡す。ぐらいかな。

最後のfor文は、アイデアが出ない。

428:デフォルトの名無しさん
18/04/19 03:37:44.72 T1rC3373.net
>>413
forループの中でしか使わない関数なら、forループ内で内部関数としてdefをすることも可能
関数が大きい場合は、調整が必要な部分だけ内部関数に書いて、その関数


429:内でもう一度外側の関数を呼ぶ二段方式もある def outfunc(x): 外側の関数 for i in range(10): def infunc(y): 調整が必要な部分 outfunc() infunc() # 内部関数呼び出し 変更箇所が少ない関数を下に置きたいだけなら、メインシーケンスを def main(): などで囲んで関数化してから、 一番最後にインデント無しの main() か、if __name__ == '__main__': と インデント付き main() を一緒に書く def main(): メインの処理 func() def func(x): 外部関数の処理 if __name__ == '__main__': main() # この時点で名前解決出来ていればエラーにならない



430:デフォルトの名無しさん
18/04/19 03:39:32.00 4mrmpy84.net
ブロックスについては、将棋・囲碁みたいに、評価基準を考える必要がある
1. 敵ピースの角に置く
2. 1マスのピースは、勝負所まで取っておく
まず、こういう高評価される手を列挙して、点数を付ける
AI の研究は、何年も掛かる

431:デフォルトの名無しさん
18/04/19 03:50:24.69 4mrmpy84.net
>>413
別のファイルに分けて、import すれば?
変数をコマンドライン引数で渡すとか、
設定ファイルに書いて読み込むとか
エディタは普通、VSCode を使う。
ソースコードのある範囲だけを、右クリックメニューから実行できる
普通、動的言語は関数定義を上に書かないと、関数を呼び出せない。
例外は、JavaScript で、関数の巻き上げ

432:デフォルトの名無しさん
18/04/19 04:18:53.20 T1rC3373.net
>>406
つなぎ目ならx,yからx+1,y+1までの4箇所の判定で対角2つ埋まってて2つ空いてる所を探せば良さそう
置ける場所リストの周辺の盤面を検索して、対角パターンを優先して、さらに出来るだけ大きいブロックを選べばいいと思う
全部の角の判定が正確に出来なくても、部分的にでも判定出来ればそこそこ強くなると思う

433:デフォルトの名無しさん
18/04/19 04:24:10.12 T1rC3373.net
>>420
訂正
対角2つが敵、1つが自分、1つが空白だった

434:デフォルトの名無しさん
18/04/19 08:55:16.93 5y+3njqT.net
>>418
ご回答ありがとです!因みに、あと二週間くらいで完成させなければならないのですが
点数つけるのは時間的にはどうなのでしょうか?

435:デフォルトの名無しさん
18/04/19 09:02:53.03 5y+3njqT.net
>>420
回答ありがとです!これは自分もしたいなって考えてたのですが、どう書けばいいか分からなくてですね…
疑問点を列挙すると
①判定の仕方
②判定後の評価
③現在使ってる置ける場所を教えてくれる関数が返してくるリスト?をその評価でソートできるのか。
って感じで前途多難です( i _ i )

436:デフォルトの名無しさん
18/04/19 09:37:46.23 4mrmpy84.net
評価基準を決めるには、何年も掛かる。
点数を決めて、敵AI と何千局も対戦して、微調整を続ける
将棋・囲碁もそう

437:遊園地
18/04/19 09:54:14.94 +uu+DOll.net
大前提がブロックスを完成済み。として、話が進んでるが、
ブッロク自体を作れてるのか気になる。

438:デフォルトの名無しさん
18/04/19 10:09:51.11 3+zW45NU.net
ガキの宿題手伝う必要ないでしょ

439:遊園地
18/04/19 10:15:02.85 +uu+DOll.net
期限が2週間も有り、大学費だしてるなら、
直接
  講師[先生]に聞いた方が良いよ。

むしろ、聞け。
 なんの為に学費だしてるんの?

440:デフォルトの名無しさん
18/04/19 10:34:58.58 5y+3njqT.net
>>424
そうなんですね!それは厳しい…( i _ i )
>>425
ブロックはアルファベットaから21字が割り振られて最初から与えられていて
置ける場所を
(X座標、Y座標、ブロックの形、回転)
のリストで返してくれる関数?を使ってます。

441:デフォルトの名無しさん
18/04/19 10:37:55.70 5y+3njqT.net
>>426
手伝っ


442:てくれたら嬉しいです >>427 先生が答えてくれない先生でですね… 聞いても調べてくださいとしか言われないので こちらにお邪魔させていただきました…



443:デフォルトの名無しさん
18/04/19 10:56:08.16 j5tv0M09.net
Pythonむずい!
なんでこんなむずいの?

444:デフォルトの名無しさん
18/04/19 12:13:54.17 cIc2YD7o.net
pythonてかやろうとしてることが難しいんじゃないの?
言語としては簡単な方でしょ、同じことを別の言語でやってみたら分かる

445:デフォルトの名無しさん
18/04/19 12:17:59.12 4mrmpy84.net
そりゃあ、ブロックスなんて答えが無いだろ
将棋・囲碁みたいに、対戦コミュニティがあるか?
まず、コミュニティへ行って、AI 同士で、何千局も対戦して、
微調整を続けないと、無理だろ

446:デフォルトの名無しさん
18/04/19 12:19:39.36 2nanKMvG.net
>>429
今時そんな殿様商売あるのかあやかりてぇ
いいなー先生様は

447:デフォルトの名無しさん
18/04/19 12:23:58.79 4mrmpy84.net
強いAI を作るのは無理だから、
とにかく、次に置けるマスだけを、リストに入れて、
その中からマスを適当に選んで、適当に選んだピースを置け
それで良い

448:デフォルトの名無しさん
18/04/19 13:12:52.70 f7DkAV9f.net
AIは可能な選択肢のうち、0点以上の最高得点手を打つ。同点時はランダム。初期値は0
AI同士に勝負させて、打った手は全部保存しておく。最終的に勝ったほうは手のそれぞれにプラス点、負け側はマイナス点
ってやろうぜw
それを二週間延々繰り返させたら強くなるんじゃなーい?

449:デフォルトの名無しさん
18/04/19 15:02:28.67 c48O4SX1.net
どんなゲームだか知らんけど
とある局面のとある手に対して、
その後は両者ランダムに打って終わらせる試行を100回くらい繰り返して
勝った回数をその手のスコアとすれば良い

450:遊園地
18/04/19 16:16:23.30 +uu+DOll.net
遊べる。ブロックスAIと言う課題なら
目安だと[GUI]は5日
ブロックスのAIを課題にするぐらいだと、逆算して
本人が半日から1日でブロックス自体が完成させれる段階で
長くても2日
残りの3,4日で
CPU AI をコレまでに教えた内容で、調整して下さい。みたいなモノ

どう、考えても[推測上の一日の固定時間 9時から20時45分]
[一日の作業量(思考)2,3時間]と過程しても、
2週間は多すぎる。
1日2日は前後する可能性が有るけど、辻褄が合わないな。

F欄大学か、なんちゃって専門学校かな?

451:デフォルトの名無しさん
18/04/19 17:59:06.99 hcjjAGnl.net
>>437
実験の一端でそもそもpythonもこの授業が初めてです。丸投げされました。

452:デフォルトの名無しさん
18/04/19 18:01:31.06 hcjjAGnl.net
回答していただいた方ありがとうございます。
参考になります。

453:デフォルトの名無しさん
18/04/19 18:40:08.42 VWrPY/vr.net
>>429
yahoo知恵袋の方がいいよ

454:遊園地
18/04/19 18:44:18.50 +uu+DOll.net
大学設定は嘘だな。
大学設定が本当だったら、今のお前に「そんな」課題だすアホ教員が悪いのか、
何も教えない大学で大金払ってる馬鹿なのか知らないけど、
質問内容で現在のレベルが分かる。
教えて貰うのに、
理解できてないなら、教えて貰ってないのと一緒。

455:デフォルトの名無しさん
18/04/19 19:10:55.84 ar7X8qES.net
>>440
行ってみます!
>>441
なんか自分お邪魔みたいだったですね…失礼しました。勉強します。

456:遊園地
18/04/19 19:51:05.39 +uu+DOll.net
おう。
大学受験に失敗して6年引き篭もってる俺には、
大学生は邪魔だぞいww

457:デフォルトの名無しさん
18/04/19 20:10:30.03 uEzvz53


458:i.net



459:デフォルトの名無しさん
18/04/19 21:02:34.32 uEzvz53i.net
2週間なら>>436くらいが適当だとおもう。
あんま強くならないだろうけど。

460:遊園地
18/04/19 22:34:07.23 +uu+DOll.net
(^p^)「あうあうあーwwwwwwww」

461:デフォルトの名無しさん
18/04/19 23:25:56.00 K4+BGrIF.net
>>416
コード紹介ありがとうございます。
まだ内容がしっかり決まって居無くってちょっと書き換えたいという時にはちょっと大げな感じになりますね
ある程度のコードの中が決まっていると良さそうですね

>>417
ありがとうございます
色々な方法があるのですね
今回の場合、mainを置く方法が手っ取り早そうです
ただ、試しに書いてみるとエラーが出ました
どこか間違えていますかね?

>>419
関数が巻き上げられるのはそこそこ一般的だと思っていました
IDEだとそんなこともできるのですか・・・
大昔、Exlipseを使っていたのですが重たくって重たくって使わなくなっていましたが検討してみようと思います
ありがとうございます。

462:デフォルトの名無しさん
18/04/19 23:41:15.47 FEDLlhkO.net
eclipse

463:デフォルトの名無しさん
18/04/20 01:21:16.01 p7k7S/mH.net
新年度始まって間もないのにpythonでブロックス+AIの課題が出るような学科は情報系の学科なのかな。
情報系の学科なら今流行りの機械学習系のことも普通にやるんだろうな

464:デフォルトの名無しさん
18/04/20 03:06:20.06 qxue6Zgp.net
横からなのですが>>187さんのWebアプリにしてはpythonでサーバー建ててブラウザで表示するで合ってますか?

465:遊園地
18/04/20 08:57:52.56 xu4ZA7YN.net
>>450
# sudo pip3 install bottle
# URLリンク(localhost:8080)
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)

466:デフォルトの名無しさん
18/04/20 10:29:12.98 WJk0jxxj.net
日本の大学じゃなさそう

467:デフォルトの名無しさん
18/04/20 11:53:43.70 bSpMfw5T.net
>>447
コード貼り付け忘れていました
# ===test.py===
def main():
x = "H"
for num in range(5):
func(str(num))
def func(x,str):
print (x + "ello " + str)
if __name__ == '__main__':
main()
# UnboundLocalError: local variable 'func' referenced before assignment

468:デフォルトの名無しさん
18/04/20 12:18:17.84 9v7e203Y.net
ブロックスてそんなに有名なゲームなんか?聞いたことないわ

469:デフォルトの名無しさん
18/04/20 12:29:06.14 WJk0jxxj.net
これか
URLリンク(studio.beatnix.co.jp)

470:デフォルトの名無しさん
18/04/20 12:52:36.38 DDZisBas.net
>>453
> def func(x,str):
の前に
> func(str(num))
の呼び出ししたらそりゃそうなるわな

471:デフォルトの名無しさん
18/04/20 12:59:05.08 CLWy02Nm.net
えっパイソンってホイストないの?
c系言語には大抵あるのに。
抽象度の高い処理頭の方に書いて、使用関数の実装はお尻のほうに置いとけて便利なのに

472:デフォルトの名無しさん
18/04/20 13:00:03.95 bSpMfw5T.net
>>456
ありがと
全部main()に入れるんだと勝手に思い込んでた

473:デフォルトの名無しさん
18/04/20 13:02:16.40 bSpMfw5T.net
Perlと比べてイライラすることがあったけど、
{
}
が不要なのはサクサク書けて良いな
Pythonの良いところまた1つ見つけた

>>457
perlしか知らないけど普段そういった使い方してたからあれば便利だよねー

474:デフォルトの名無しさん
18/04/20 13:43:32.65 szszCkSU.net
関数を書く順番はどうでも良いよ
関数は全部グローバルに書いといて、ファイルの最後でmainを呼べばオーケー

475:デフォルトの名無しさん
18/04/20 13:46:22.55 szszCkSU.net
ってか、>>453はdef funcのインデント下げれば動くだろう

476:デフォルトの名無しさん
18/04/20 13:49:06.94 bSpMfw5T.net
>>460
こういうこと?
# ===test.py===
def main():
 x = "H"
 y = "h"
 for num in range(5):
  func(x,str(num))
  func(y,str(num))
def func(x,str):
 print (x + "ello" + str)
def func2(y,str):
 print (x + "ello" + str)
if __name__ == '__main__':
 main()

477:デフォルトの名無しさん
18/04/20 13:56:09.67 bSpMfw5T.net
>>461
それについては456で教えて貰って解決した>>458
>>462
訂正
def func2(y,str):
 print (x + "ello" + str)
def func2(y,str):
 print (y + "ello" + str)

478:デフォルトの名無しさん
18/04/20 14:06:06.09 aZdt3WBn.net
呼ぶ側がfunc2になってないから動かないと思うけど、だいたいそういうこと

479:デフォルトの名無しさん
18/04/20 15:27:31.37 DDZisBas.net
>>457
そもそもpythonのdefは実行文だから

480:デフォルトの名無しさん
18/04/20 17:50:44.02 1rBd94+J.net
spyder使ってるんだけど、defの中の変数が実行後の変数エクスプローラに表示されなくなるんだけど、表示させる方法ない?
もちろん実行時はその変数に値が格納されてるんだけど、defを出た瞬間に破棄されちゃうのかな。
いちいちprintしてデバッグするのめんどくさい

481:デフォルトの名無しさん
18/04/20 17:54:59.99 WJk0jxxj.net
global

482:デフォルトの名無しさん
18/04/20 19:16:25.14 9TOBYLLi.net
デバッガで何しようとしとんのやこのアホはw

483:デフォルトの名無しさん
18/04/20 21:19:08.77 bNn+sorS.net
デバッガはブレークポイント仕掛けたり1行ずつステップ実行しながら変数をウォッチするものだと思うので
実行中にリアルタイムで表示変えるのは超高速なエミュレータでもないと…;

484:デフォルトの名無しさん
18/04/20 22:57:24.69 Xu3EKzy5.net
>>467
globalにすれば出来るのは知ってるけど、いちいち関数化したのを戻すのが面倒だから他に方法がないのかと思って。
>>469
リアルタイムでみたいわけじゃなく、プログラム実行後にメモリに残った変数を確認したいって意味ね。
おかげ気づいたけど、defを抜ける直前にブレークポイント置いてそこで確認すりゃあいのかな。けど関数の分割多いと辛いな。

485:デフォルトの名無しさん
18/04/20 23:08:48.76 k7m69UuR.net
ログ吐くようにしとけよ

486:デフォルトの名無しさん
18/04/20 23:18:23.85 k7m69UuR.net
printめんどくさいとか言ってるがある程度のサイズのあるプログラムはログ残したほうが結局は作業がはかどる。

487:遊園地
18/04/20 23:47:55.05 xu4ZA7YN.net
ログはprintでは無いと言う事を肝に免じて置いて下さい。

488:デフォルトの名無しさん
18/04/21 00:18:21.37 NjF1F28w.net
>>473
ログをprintで書くことで悦に入っています。

489:デフォルトの名無しさん
18/04/21 00:46:49.28 SeoWSMd7.net
>>472
printがめんどくさいと言う人ならログ出すように変更するのもめんどくさいになるだろう。
めんどくさいのいやだいやだで、(コードに手を入れないで)
ツール(デバッガ)で楽々出来るようにしたいにニダと言う感じだろう
実運用ではこのログはイラネなんだろうが。

490:デフォルトの名無しさん
18/04/21 01:00:05.67 YdpuWmPR.net
肝に免じてどうする
肝は銘ずる(刻みつける)ものだ

491:デフォルトの名無しさん
18/04/21 01:10:45.10 SeoWSMd7.net
>>476
遊園地のいるところは
肝に銘じてが
話し言葉で
>肝にめんじて
になるところなんだよ。
鉛(標準語では訛)がでたんだろ

492:デフォルトの名無しさん
18/04/21 01:40:30.99 jRiYYFVC.net
p2exeって日本語は扱えないのですか?

493:デフォルトの名無しさん
18/04/21 03:00:26.77 HWyKzA01.net
>>478
py2exeではなく?

494:デフォルトの名無しさん
18/04/21 03:26:11.52 jRiYYFVC.net
>>479
間違えました、py2exeです。日本語文字をprintしようとすると
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
って出るんですよね。コードをutf-8にしたり、文字列の先頭にuを付けてみましたが、きちんとexeが生成されません

495:デフォルトの名無しさん
18/04/21 07:09:29.13 nN/toUY2.net
肝免わろすwww

496:遊園地
18/04/21 07:29:31.66 fW+0Fovn.net
>>477
あああーーーー
  それは、アカンww

明治時代の初期までなら、隣の県に行けば
言葉が通じないのもザラだったしなwww

497:デフォルトの名無しさん
18/04/21 08:46:12.30 HWyKzA01.net
>>480
んでもってPythonは2系をつかってるのか?
あるいはWindowsのユーザー名が日本語なのか。
素直に3系つかうことと
py2exeするときはあきらめて日本語を含まないユーザー名を作って
そこからやる

498:デフォルトの名無しさん
18/04/21 15:11:14.68 Jlfar8cI.net
py2exeは3.6に対応してないから、バイナリ作るならpyinstallerの方がいいと思う
セットアップファイル作る必要もなくて楽だし

499:デフォルトの名無しさん
18/04/21 15:16:38.37 K9lD61bw.net
bytesをfloat配列にする高速な方法無いでしょうか?
4バイトで1floatではなく、1バイトで0.0~1.0の範囲の1floatの
同じ長さの配列が欲しいのですが

500:デフォルトの名無しさん
18/04/21 16:19:45.05 Jlfar8cI.net
pyinstallerで詰まったのは、pandasを使うスクリプトでエラーが出ることぐらい
pandasを 0.20.0 に落とせば通る様になると思う

501:デフォルトの名無しさん
18/04/21 16:38:34.70 Zke6MJB8.net
>>485
精度落ちて良いならいくらでもある

502:デフォルトの名無しさん
18/04/21 16:42:03.35 K9lD61bw.net
>>487
精度は構いませんので是非

503:デフォルトの名無しさん
18/04/21 16:58:38.10 V+d3uri5.net
正の数だけ?

504:デフォルトの名無しさん
18/04/21 17:04:24.09 yl7d1HXp.net
精度気にしないなら
0x00 = 0.0
0x01 = 0.004
0x02 = 0.008
...
0xFA = 1.0
0xFB~0xFF は使わない
とか勝手に決めれば良いだけ

505:デフォルトの名無しさん
18/04/21 17:09:59.96 K9lD61bw.net
>>489
0.0~1.0の正の数だけです

506:デフォルトの名無しさん
18/04/21 17:22:36.40 6J3G0l4e.net
>>490
それ普通に255.0で割る方が速いだろw

507:デフォルトの名無しさん
18/04/21 17:26:25.82 yl7d1HXp.net
そうか?
>>490 も 250 で割るだけだから速度は一緒だぞ

508:デフォルトの名無しさん
18/04/21 17:30:44.93 6J3G0l4e.net
>>493
250.0で割るのだと元のバイト列にある251~255を1.0に丸める処理が必要になるだろ。
考えてから発言する習慣付けなよ。

509:デフォルトの名無しさん
18/04/21 17:34:55.64 yl7d1HXp.net
どうせ使わないんだからいいだろ

510:デフォルトの名無しさん
18/04/21 17:45:08.29 nWGazij5.net
おいおい256.0だろ…
おまえは1を0.1にするのに9で割ると言うのかい?

511:デフォルトの名無しさん
18/04/21 18:23:41.65 bgp2zzOH.net
>>485
256 しかないんだから float f


512:[256] の配列作って変換すればいいんじゃね?



513:デフォルトの名無しさん
18/04/21 18:33:33.34 ZHkY3Ka/.net
頭いいな

514:デフォルトの名無しさん
18/04/21 18:37:22.51 CHrbK6wg.net
>>483 >>484
素直にパイインストーラーを使うことにします。ありがとうございました!

515:遊園地
18/04/21 19:45:18.90 fW+0Fovn.net
windows辞めて、Ubuntuにしたらデフォルトでpython2,python3入ってるよ。
 なんつってwwww  これぞwww 悪魔の囁きwwwww

516:デフォルトの名無しさん
18/04/21 19:47:16.89 fJguH7wu.net
いやシステムのPythonは使わないのか基本だぞ

517:デフォルトの名無しさん
18/04/21 19:51:23.74 Af+18o1F.net
それな
むしろデフォで入っていることが余計なトラブルの元になってる

518:デフォルトの名無しさん
18/04/21 19:53:02.17


519:SpcYsUEG.net



520:デフォルトの名無しさん
18/04/21 20:04:52.49 nN/toUY2.net
>>501
何に騙されてそんなガセネタ信じとるんやwwwww

521:デフォルトの名無しさん
18/04/21 20:09:07.60 +jzprnKY.net
UbuntuとかMacとかはpyenv入れてからAnaconda入れてとか結構面倒くさい

522:遊園地
18/04/21 20:54:58.27 fW+0Fovn.net
Ubuntu系のlinux mintにAnaconda入れてる。
起動確認の初回しか、動かしてない。

523:遊園地
18/04/21 21:45:02.32 fW+0Fovn.net
オブジェクトをヒープ上にメモリ確保する場面は
どんな時ですか?

524:デフォルトの名無しさん
18/04/21 22:00:51.41 ZHkY3Ka/.net
逆にヒープ以外にどこにメモリを確保するんだ?
それが答えじゃね?

525:デフォルトの名無しさん
18/04/21 22:05:01.51 zxSpDS2l.net
>>504
開発環境とシステム分けておくの大事だぞ

526:遊園地
18/04/21 22:16:07.69 fW+0Fovn.net
実行できない。
  へるぷ
def grade(score, breakpoints=[60, 70, 80, 90], grades='FDCBA'):
□i = bisect(breakpoints, score)
□return grades[i]
[grade(score) for score in [33, 99, 77, 70, 89, 90, 100]]

527:デフォルトの名無しさん
18/04/21 23:13:25.47 ZHkY3Ka/.net
実行できないってどういうことよ
エラーメッセージがあるならそれも載せろよ
まあわざと載せてないのかもしれないけど

528:デフォルトの名無しさん
18/04/21 23:56:54.79 XrHLCoEo.net
>>510
>>509が言っているだろ。開発環境とシステム分けてないから実行できないんだよ

529:遊園地
18/04/22 07:24:22.58 S/aJuoMN.net
NameError: name 'bisect' is not defined
関数内にglobal と書いてもダメだった。

530:遊園地
18/04/22 07:35:06.34 S/aJuoMN.net
import bisect
で、TypeError: 'module' object is not callable
$ sudo pip3 install bisect で
Could not find a version that satisfies the requirement bisect (from versions: )
No matching distribution found for bisect

要件bisectを満たすバージョンを見つけることができませんでした(バージョンから:)
二等分線に一致する分布が見つかりませんでした

531:デフォルトの名無しさん
18/04/22 07:59:57.89 6LlZ0HWt.net
「みんなのPython」に書いてある
Anaconda は、Windows など予め、Python が入っていないOS が対象です。
Linux など、最初からPython が入っている場合は、プロに聞いて下さい。
この本では教えませんw
つまり、Pythonがバッティングするから。
Python3 というコマンドが、Python 3.4, 3.5 のどれを指すのか、
OSとAnacondaで、異なるバージョンの場合に厄介だから
$ which python3
/usr/bin/python3
$ which python3.5
/usr/bin/python3.5
$ file /usr/bin/python3
/usr/bin/python3: symbolic link to python3.5
つまり、Windows10・WSL・Ubuntu16.04 では、python3 → python3.5
異なるバージョンを使いたければ、仮想環境のvirtualenv(venv)を使って、
環境変数PATH を上書きしないといけない
activate ってすると、PATHが上書きされて、
システムとは異なるバージョンと結び付けられる
それか、Docker を使うとか

532:遊園地
18/04/22 08:55:24.40 S/aJuoMN.net
Anaconda使ってないよw
Geanyから起動してる。
linux mint18 mate
python 3.6.3

533:遊園地
18/04/22 08:56:08.08 S/aJuoMN.net
システムバージョンの
python 3.5.2でも試したけど、一緒のエラー内容だった。

534:遊園地
18/04/22 09:06:16.89 S/aJuoMN.net
公式から、ライブラリ落として
入れないと駄目とか?
分からない。

535:遊園地
18/04/22 09:28


536::09.74 ID:S/aJuoMN.net



537:遊園地
18/04/22 09:30:23.48 S/aJuoMN.net
皆さん、いろいろと
ありがとう、ございました。

538:デフォルトの名無しさん
18/04/22 10:07:45.92 clJAmZnE.net
help(help)について
help関数の定義を見たくてhelp(help)を実行したところ、
以下のような出力がありました。
Help on _Helper in module _sitebuiltins object:
class _Helper(builtins.object)
| Define the builtin 'help'.
|
| This is a wrapper around pydoc.help that provides a helpful message
| when 'help' is typed at the Python interactive prompt.
|
| Calling help() at the Python prompt starts an interactive help session.
| Calling help(thing) prints help for the python object 'thing'.
|
| Methods defined here:
|
以下略
見たいのは_Helper in module _sitebuiltinsではなくhelp function、
以下のような説明です。
help(object): help on object or class of object, except
help('name'): help on object/module named 'name'
help(): run utility, which starts with utility help
どうしてそれが出ないのか、ご教授いただけるとありがたいです。
Python3.6、pycharmを使用しています。

539:デフォルトの名無しさん
18/04/22 10:29:12.32 Nfi3M0G/.net
>>519
質問をすることでしか得られない、回答やアドバイスがある。
15分調べてもわからないことは、質問しよう!
何このサイト
入門者でも質問OKなのかな?
このスレだと15分調べて質問したらggksとか言われそうなんだが

540:遊園地
18/04/22 10:35:53.40 S/aJuoMN.net
>>522
このレベルから受け付けてる。
URLリンク(teratail.com)

541:デフォルトの名無しさん
18/04/22 11:17:20.23 Nfi3M0G/.net
>>523
色々な意味で驚いた
間口が広いはずの、2/5chの存在意義が・・・
ただ、入門者だと実際ここで躓く事もあるし
ディレクトリ構造って実際理解するの結構大変
分かってるとツリーになってると言えるし、そもそも何が大変なのか説明する方が難しいレベルだし・・・
そういえば、最近のOSってアドレスにあるパスが一部しか書いてなかったりするけどみんな困らないのかな?
昔のOS使ってるとパス辿ればいいと分かるけど、パスの概念を勉強する機会が減りそう

542:デフォルトの名無しさん
18/04/22 11:28:31.70 WmJ9TmOv.net
>>524
同意を求めるのじゃなくて質問すれば答えてくれんじゃね?そうゆうの?

543:デフォルトの名無しさん
18/04/22 11:45:11.71 3qJWMYht.net
python導入の仕方がわからない。。。

544:デフォルトの名無しさん
18/04/22 12:05:00.81 8GLco50w.net
>>526
teratailで質問するとここと違いやさしく丁寧に教えてくれるよ

545:デフォルトの名無しさん
18/04/22 12:18:40.18 bQIDMX1u.net
>>526
グーグルでpython インストール で検索。
以上。

546:遊園地
18/04/22 13:19:51.68 S/aJuoMN.net
>>526
ネタだと思うけど、公式から自分が使用してるOSを選ぶ。
URLリンク(www.python.org)
32bit PCだと 64bit版は動かせない。
x86 32bit
x86-64 64bit

547:デフォルトの名無しさん
18/04/22 13:21:25.71 6LlZ0HWt.net
ここは、Python の初心者用のスレだろ。
言語だけの初心者
PC・OS・情報処理の初心者用ではない。
Python以外の事は、知っているべき

548:遊園地
18/04/22 13:21:58.00 S/aJuoMN.net
win機で特に理由が無いなら、
Windows x86-64 executable installer
Ubuntuならコッチみてくれ。
URLリンク(www.python.jp)

549:遊園地
18/04/22 13:23:09.27 S/aJuoMN.net
>>530
最初に、どれ動かして良いのか分からなかったからww
 全部ダウンロードして、試した俺が居るぞww

550:デフォルトの名無しさん
18/04/22 14:04:12.27 Nfi3M0G/.net
>>530
でもなぁー
毎日PCの電源を入れている人ならともかく
例えば高校数学にコンピュータあるけどあれするだけでもプログラミングソフトのセットアップって
重要で意外と難易度が高い
かといって、WindowsOS向け、Pythonセットアップスレとか作っても多分はやらない
ただ、少し慣れてきてUbuntuとかtensorflow-gpuとか入れろと言われるとトラブってる人も多いし
その記事だけでアフィが成り立つレベルだよ

551:デフォルトの名無しさん
18/04/22 16:22:41.42 3qJWMYht.net
526です。pythonのコード書くのはコマンドプロントだけ?

552:デフォルトの名無しさん
18/04/22 16:26:30.71 3qJWMYht.net
pythonのエディタはWindowsのコマンドプロントだけ?

553:デフォルトの名無しさん
18/04/22 16:57:42.88 /RR+q6wr.net
>>533
学校も含めて他人のPCにインスコするときは
VM用意してその中で遊ぶのがマナー

554:デフォルトの名無しさん
18/04/22 17:08:09.84 PsQCMKRd.net
>>530
言語だけの初心者=PC・OS・情報処理の初心者やけど
よっておまえもなw

555:遊園地
18/04/22 17:52:06.12 S/aJuoMN.net
>>536
それは無いよ。
USBブートで遊ぶべき。

556:デフォルトの名無しさん
18/04/22 19:12:05.56 Nfi3M0G/.net
>>536
VMってシステムに深く入り込むから大変なことになる
というかLANが使えなくなって半日嵌った

557:デフォルトの名無しさん
18/04/22 19:37:52.67 HOpx3haN.net
他にもいっぱいあるよ

558:デフォルトの名無しさん
18/04/22 19:48:31.90 H/AU6k7y.net
>>539
???
VMware PlayerとかVirtualPCなんかだと普通のアプリケーションと変わらんぞ
ゲスト側のネットワーク設定はちょっとコツが要るけど

559:デフォルトの名無しさん
18/04/22 21:53:07.67 2Fk6o3gK.net
アップデートしたら、仮想SW死んだことがある
環境的に物理的なトラブルと切り分けが調べられなくて泣きそうになった

560:デフォルトの名無しさん
18/04/22 21:57:51.54 2Fk6o3gK.net
hyper-vだったけどね

561:デフォルトの名無しさん
18/04/22 22:24:34.38 SkZxcoIM.net
wxpythonでボタンをクリックしたら別のpyに書いたウィンドウを表示させているのですが、開いたpyウィンドウを閉じるともとのボタンをクリックしても再実行されません。
importは一度だけというのはわかっているのですが・・・
どのような記述をすれば閉じても何度でも再実行できるようになるのでしょうか。
教えて下さい。

562:遊園地
18/04/22 23:01:16.94 S/aJuoMN.net
>>544
URLリンク(ideone.com)
に全部 ソース貼れw
 それを見てから応える

563:デフォルトの名無しさん
18/04/22 23:03:22.02 6LlZ0HWt.net
wxpython を説明している、サイトを見て、勉強する

564:デフォルトの名無しさん
18/04/22 23:35:12.62 GW1847bJ.net
>>544
5chのPythonスレのレベルを超えた質問
teratailで尋ねたほうが良いよ
>>546
このスレで出来る回答はそんなもんだよな

565:デフォルトの名無しさん
18/04/23 08:33:18.26 1C6OTR8X.net
URLリンク(ideone.com)です!

566:遊園地
18/04/23 10:37:49.00 /QV9I6Db.net
>>548
実行ボタン処理が定義されて無いから?
詳しい人、どうぞww

567:デフォルトの名無しさん
18/04/23 11:17:30.25 DP/vD1RL.net
pythpn初心者だけどオブジェクト指向分からな過ぎて死にそうです
何かおすすめの本ありますか?

568:デフォルトの名無しさん
18/04/23 11:18:44.42 zsG77YNH.net
死んだ方がいいよ

569:遊園地
18/04/23 11:30:33.57 /QV9I6Db.net
厳し過ぎやろ
 俺が引いてんじゃねぇか!ww

[遊園地は]使い分けると深みに嵌まるから、この形式


570:だけ抑えて後は垂れ流しだな。 https://ideone.com/VuRClI



571:デフォルトの名無しさん
18/04/23 13:03:27.78 HUlTGC1I.net
>>548
とりあえず、ボタン押してフレーム出すのはこう。

import wx
class ChildFrame( wx.Frame ):
def __init__( self, parent ):
super().__init__(parent, wx.ID_ANY)
sizer = wx.BoxSizer(wx.VERTICAL)
lb = wx.StaticText(self, wx.ID_ANY, "Hello!")
sizer.Add(lb)
self.SetSizer(sizer)
sizer.Fit(self)
class MainFrame( wx.Frame):
def __init__(self):
super().__init__(None, wx.ID_ANY )
sizer = wx.BoxSizer(wx.VERTICAL)
btn = wx.Button(self, wx.ID_ANY, "Push Me!")
sizer.Add(btn)
self.SetSizer(sizer)
sizer.Fit(self)
btn.Bind(wx.EVT_BUTTON, self.on_button)
def on_button( self, evt ):
child_window = ChildFrame(self)
child_window.Show()
if __name__ == "__main__":
app = wx.App()
frame = MainFrame()
frame.Show()
app.MainLoop()

572:スッキリ厨
18/04/23 13:31:39.89 jMm7sVs3.net
>>550
まずこの本で、オブジェクト指向を学ぶ。
スッキリわかる Java入門 第2版、2014
その後、この2冊をこの順に読む。
たのしいRuby 第5版、2016
みんなのPython 第4版、2017
この順番でやらないと、理解できないはず。
特に、オブジェクト指向の本は「スッキリ」しか存在しない

573:デフォルトの名無しさん
18/04/23 14:31:38.43 Lf5qXYif.net
>>553さん
ありがとうございます!
ただボタンを押した後のフレームを出す処理を他のファイルに書いています。
そういうやり方は一般的ではないのでしょうか?

def on_button( self, evt ):
import aaa
のようにaaa.pyを呼び出して処理させたいのですが、一回表示させて閉じると再表示させることができません。

574:デフォルトの名無しさん
18/04/23 14:47:47.40 HUlTGC1I.net
>>555
ファンクションの中でimportして、しかもそれだけでウィンドウを出すってのはすごく変。
四の五のいわずにやめた方がいい。
大体そんなやり方してたら親ウィンドウすら渡せない。

575:デフォルトの名無しさん
18/04/23 14:51:26.42 HUlTGC1I.net
>>555
子ウィンドウのコードを別のファイルにしたいなら、ChildWindowの定義部分を別ファイルにしてimportすればいい。

576:デフォルトの名無しさん
18/04/23 15:10:44.56 Sx+lupQ0.net
>>555
偉大なるこのスレの遊園地様が必死に質問しているteratailで聞いたほうがいいよ
処理を書いている他のファイルも提示して動くようにしてくださいと依頼すれば良い

577:デフォルトの名無しさん
18/04/23 15:15:35.49 sVI7fOBi.net
importは読み込んで実行というより
定義や宣言を読み込むため(だけ)に使うのが普通よね

578:デフォルトの名無しさん
18/04/23 15:19:13.02 Sx+lupQ0.net
>>557
>ChildWindowの定義部分を別ファイルにしてimportすればいい
ChildWindowの定義部分がある別ファイルのaaa.pyをimportしているのが
on_buttonのimport aaaなんだろ

579:デフォルトの名無しさん
18/04/23 15:32:45.72 sVI7fOBi.net
import aaa

 def on_button(…):
  child_window = aaa.ChildFrame(…)
  child_window.xxx = yyy
  …
こんな感じかね

580:デフォルトの名無しさん
18/04/23 15:57:59.47 sVI7fOBi.net
ついでにimportで1回しか実行されない原因はこれ
URLリンク(python.matrix.jp)
C言語でいうインクルードガード的なのが働いてる

581:デフォルトの名無しさん
18/04/23 17:22:58.10 Lf5qXYif.net
ありがとうございます、大変勉強になりました。
頑張ります!

582:デフォルトの名無しさん
18/04/23 17:39:53.20 HUlTGC1I.net
>>560
wx.Frame.Showをimportするファイルに書くなって意味なんだけど、伝わりませんか、、、そうですか、、、すみません。

583:デフォルトの名無しさん
18/04/23 18:24:03.12 NdLOIshu.net
わたしに


584:は伝わりました!



585:遊園地
18/04/23 18:38:50.30 /QV9I6Db.net
>>555
.pyファイルを1つの関数が代わり使うとは大胆だな。
単純に、 >>561
import aaa
aaa.pyファイルの中身を関数かクラスにする。

586:遊園地
18/04/23 18:42:03.15 /QV9I6Db.net
遊園地ww 公式ですと、こんな感じですなww
----aaa.py----
import bbb
bbb.A()
----bbb.py-----
def A():
print('Hello World')

587:デフォルトの名無しさん
18/04/23 20:14:08.95 vFsvQnxK.net
>>555
もしかしてimportするスクリプトにグローバルに書いてるのか
もしそうなら、面倒でも何か関数をdefして(例えばopen_window() とか名前を付けて)
その中にグローバルで書いてた処理を移動すべし
def on_button( self, evt ):
 import aaa
 aaa.open_window()
という風にすれば、on_button() を呼び出す度にopen_window()が確実に実行される

588:デフォルトの名無しさん
18/04/23 21:07:24.03 6SrNRF4N.net
568さん、今日1日でここまで教えていただけると思わなかったです!
ほんとありがとうございます!

589:デフォルトの名無しさん
18/04/23 21:34:33.91 Mytq4Fn/.net
>def on_button( self, evt ):
>import aaa
のaaa.pyのどんなことを書いてあるんだろ?
>>569
>>553のdef on_button( self, evt ): の処理部をaaa.pyに書いて
動くように出来る?

590:553
18/04/23 21:59:54.79 3UVOgM3N.net
ああわかったよ、書けばいいんだろ、、、
>>>aaa.py
import wx
class ChildFrame(wx.Frame):
<中略>
>>>main.py
import wx
from aaa import *
class MainFrame(wx.Frame):
<中略>
def on_button(self, evt):
child_frame = new ChildFrame(self, wx.ID_ANY)
child_frame.Show()

591:553
18/04/23 22:06:09.88 3UVOgM3N.net
すまん、インデントが消えた。
ちなみにwxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれないから
アプリケーションのメインウィンドウ以外には親を渡した方が良い。
これはaaa.pyに子ウィンドウを表示するグローバル関数を定義する場合も同じ(関数の引数として親を渡せるようにする)
じゃないと、出したフレーム片っ端から閉じないとプログラム終了しなくなる。

592:553
18/04/23 22:17:49.55 3UVOgM3N.net
new ってなんだよ、、俺。
「new ChildFrame(・・・」のnewはいりません、ごめんなさい。

593:デフォルトの名無しさん
18/04/23 22:22:44.80 6SrNRF4N.net
奥深いっす…でも楽しみです!
ありがとうございます!

594:デフォルトの名無しさん
18/04/23 22:34:59.73 M4g+UNEZ.net
>>572
俺、超低脳でさっぱり分からないんだけど、
>wxの子ウィンドウには親の参照渡しとかないと、親を閉じたときにアプリケーションが勝手に終了してくれない
その親の参照渡しは>>571のどこに記述されているんだ?

595:デフォルトの名無しさん
18/04/23 22:36:33.56 3UVOgM3N.net
>>575
ChildFrameのコンストラクタの第一引数。

596:デフォルトの名無しさん
18/04/23 22:40:44.90 3UVOgM3N.net
ていうとわかりにくいか?
child_frame=ChildFrame(self・・・
のself

597:デフォルトの名無しさん
18/04/23 22:51:42.66 jJWBqt/a.net
遊園地召喚

598:デフォルトの名無しさん
18/04/23 23:04:48.51 M4g+UNEZ.net
>>577
俺の知識では理解は無理だが、その部分なのか(そもそも、クラスを理解している奴なら質問しないだろうが)
ついでに、
>>553>>571のような回答をくれればよかったんだろうがな(元の質問が別ファイルに子windowの記述がある)
一方、>>574は素直に>>553>>570のようにするにはどうすれば良い?と質問すればよかったんだろうが
超初心者は俺もだがコミュ力ないから回答得るのに遠回りするよな
このスレは>>576で出たコンストラクタも、これ何?レベルの奴が質問だろうからな

599:デフォルトの名無しさん
18/04/23 23:14:47.88 3UVOgM3N.net
すまんね。
553書いたときはクラス一つ別のファイルに移動してそれを使うことが出来ない人がwx使ってウィンドウ出せるなんて思ってなかったんだよ。

600:デフォルトの名無しさん
18/04/23 23:27:13.13 M4g+UNEZ.net
>>553
コミュ力ない人の質問だと本当に教えてほしいことが相手に伝わらないことが多いから
回答する人は要エスパー力だからな

601:デフォルトの名無しさん
18/04/23 23:31:46.35 M4g+UNEZ.net
>>58


602:1は>>580へ



603:デフォルトの名無しさん
18/04/23 23:52:25.59 2sWKRyd2.net
以下のコードを実行するとエラーになります
どうすればいいのでしょうか・・・
y = 10
print(f'test y = {y}')

604:デフォルトの名無しさん
18/04/23 23:56:38.04 2sWKRyd2.net
すいません3.6から実装されたf文字列というんですね
3.5だからエラーになるわけだ(´・ω・`)

605:遊園地
18/04/24 08:01:24.83 G5LttnIJ.net
別バージョンのpython入れてから、物凄いトラブってる。
dpkg-deb: エラー: サブプロセス ペースト がシグナル (Broken pipe) によって強制終了されました
処理中にエラーが発生しました:

フォーカスの処理とかしてないが、呼び出すだけなら、コレで良い?
試しては無い。
def Sample():
sub_win = Tkinter.Toplevel()
sub_win.title(u"Sub Process")
sub_win.geometry("400x300")
Sample()

606:デフォルトの名無しさん
18/04/24 08:37:58.18 AdXJnnP5.net
馬鹿には無理

607:デフォルトの名無しさん
18/04/24 10:09:50.76 jhtbgK3V.net
jupyter labとnotebookどっも括弧やクォーテーションの補完が効かないんだけどデフォ?
それともなんかおかしい?

608:デフォルトの名無しさん
18/04/24 14:47:46.65 xQCRvp4n.net
553さんは普段仕事でpython利用されてるんですか??

609:デフォルトの名無しさん
18/04/24 14:48:37.60 QI4dBYy7.net
マルチ拝観

610:デフォルトの名無しさん
18/04/24 15:37:30.64 WvdWgq+O.net
現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意 
って初心者向き?

611:デフォルトの名無しさん
18/04/24 16:20:06.53 dUrN2wLw.net
>>587
デフォルトでは補完されることになつているはず。
今の状態だとIpythonでも補完できないと思うが?

612:デフォルトの名無しさん
18/04/24 17:07:25.08 Mdvhp2Yn.net
すみません、質問です。
初歩的なことかもしれませんが、
Pythonを使うエディタで秀丸使ってるんですけど、
他のsublimeとかのほうが使いやすいですか?
秀丸だとインデント打つのが面倒で・・・。
ご回答よろしくお願いします。

613:デフォルトの名無しさん
18/04/24 17:26:32.99 KvfUX4Up.net
そのうちプログラム打つのが面倒とか言い出しそうだな

614:デフォルトの名無しさん
18/04/24 17:28:48.89 QI4dBYy7.net
秀丸は割と良い方

615:デフォルトの名無しさん
18/04/24 17:39:44.58 1D4v+3Mx.net
VSCode は?

616:デフォルトの名無しさん
18/04/24 17:41:28.56 ftYeuzTX.net
>>588
本業はc++
そっちでwx使ってるから、wx周りはそこそこ詳しいってだけ。
pythonは趣味。

617:デフォルトの名無しさん
18/04/24 18:12:28.83 eLoUapjt.net
意地張ってないでpycharmにしなさい。どうせpythonしか書かないでしょ。

618:デフォルトの名無しさん
18/04/24 19:36:02.20 8pq7pLvE.net
>>592
俺は扱えないけど、プログラムのためのエディタはvimが良いらしいらしいよ
>>597
低脳にはそんな素晴らしいIDEは猫に小判だろう
書くPythonだって100行もいかないだろうし、そして、モジュールの中を見ることもないだろう

619:デフォルトの名無しさん
18/04/24 19:47:17.37 h25jwsU+.net
>>591
ipythonでも補完できない。なんかなくちゃいけないファイルが無いんかなあ、探してみます。

620:デフォルトの名無しさん
18/04/24 20:18:42.40 Mdvhp2Yn.net
>>598
vimは関係ないですよ。
プログラミング書くのに適してませんし。
>>598
趣味でPythonやっている>>553さんに「低脳」って言うのは言い過ぎだと思いますよ。

621:デフォルトの名無しさん
18/04/24 20:28:24.71 PPDUXdzL.net
Vimが適してないとかアホか
お前がプログラミングに適してねえよマヌケ
一生懸命ひでまるおしてろ

622:デフォルトの名無しさん
18/04/24 20:35:04.99 Mdvhp2Yn.net
vimでプログラミングするって冗談じゃなかったのかw
これは真性だな・・・
俺はもう実務でPython扱ってるよ
すでに300行以上書いた
明日からちゃんとしたエディタインストールするわ
あとみんなレスするときはアンカー(>>)をつけるように
誰に対して言ってるのかわからない独り言みたいだからね

623:デフォルトの名無しさん
18/04/24 20:46:20.64 yGK7zMMt.net
配列の例題なのですが
str = "Hello"
str2 = ""
for n in str:
str2 = str2 + (n * 2) + '~'
print(str2)
これのstr2 = ""は何をする為に必要なんでしょうか?

624:デフォルトの名無しさん
18/04/24 20:55:41.97 8pq7pLvE.net
>>603
試しに、str2 = "" を #str2 = "" して見ればOK
str2 = [] や str=0でもOKだが

625:デフォルトの名無しさん
18/04/24 20:57:15.34 JriH9xMX.net
試しにコメントアウトしてみ?

626:デフォルトの名無しさん
18/04/24 20:58:23.94 JriH9xMX.net
あら、先越されたw

627:デフォルトの名無しさん
18/04/24 20:59:12.40 Mdvhp2Yn.net
>>604
えらい!
ちゃんとアンカーつけられたじゃないかw

今日も仕事頑張ったし
もう寝るわ
おやすみノシ

628:デフォルトの名無しさん
18/04/24 21:04:38.83 yGK7zMMt.net
コメントアウトしたらNameErrorと出ました。
これはstr2=""でとりあえず文字として定義してるってことですかね

629:デフォルトの名無しさん
18/04/24 21:07:01.25 8KBFlzDM.net
>>600
             「 ̄ `ヽ、   ______
             L -‐ '´  ̄ `ヽ- 、   〉
          /           ヽ\ /
        //  /  /      ヽヽ ヽ〈
        ヽ、レ! {  ム-t ハ li 、 i i  }ト、
         ハN | lヽ八l ヽjハVヽ、i j/ l !
         /ハ. l ヽk== , r= 、ノルl lL」
        ヽN、ハ l   ┌‐┐   ゙l ノl l
           ヽトjヽ、 ヽ_ノ   ノ//レ′
    r777777777tノ` ー r ´フ/′
   j´ニゝ        l|ヽ  _/`\
   〈 ‐ 知ってるが lト、 /   〃ゝ、
   〈、ネ..         .lF V=="/ イl.
   ト |お前の態度が とニヽ二/  l
   ヽ.|l         〈ー-   ! `ヽ.   l
      |l気に入らない lトニ、_ノ     ヾ、!
      |l__________l|   \    ソ

630:デフォルトの名無しさん
18/04/24 21:07:54.72 ChFyzKk0.net
>>607
まだ見てるよね
ちょっとお母さんと代わってくれる?
お宅のお子さんはちゃんと小学校に通わせましたか?
お猿の学校では駄目ですよ
って教えてあげないといけないんだ

631:デフォルトの名無しさん
18/04/24 21:20:09.03 8pq7pLvE.net
>vimは関係ないですよ。
>プログラミング書くのに適してませんし。
vimを使っている奴は、真性だな・・・と主張しているのか

632:デフォルトの名無しさん
18/04/24 21:33:10.24 dUrN2wLw.net
>>603
変数にstrが許されるのは小学生まで

633:デフォルトの名無しさん
18/04/24 21:46:40.49 gtAr5qY0.net
俺はvim使ってるけど確かにここの超初心者には勧めたくはないな

634:デフォルトの名無しさん
18/04/24 21:48:12.19 UZrLd4N8.net
まさかのリアル厨房ワロタw

635:デフォルトの名無しさん
18/04/24 21:48:59.19 T7P20eIK.net
実際vimでコーディングする人は多いよ
きちんとカスタマイズしてやればIDEより軽いし機能も必要十分で普通に実用的

636:デフォルトの名無しさん
18/04/24 21:52:23.15 8pq7pLvE.net
>>608
何のために、str2=""でとりあえず文字として定義が必要と思った?
str2 = str2 + (n * 2) + '~'

str2 += (n * 2) + '~'
として、とりあえず文字として定義を止めるとNameErrorと出るか?
ついでに、大きく変更して
str2 = 1 + 1 にしたら、str2はNameErrorとでるか?
最後に、NameErrorと出たのは
str2 = str2 + (n * 2) + '~'
のどれだ?(一番目のstr2、2番目のstr2、(n * 2)、'~')
中学あたりの数式計算で、
x = 1
y = y+x
としたとき、yの値は得られると思うか

637:デフォルトの名無しさん
18/04/24 21:55:10.72 BAt1Eldp.net
ぶっちゃけ君ら何歳?

638:デフォルトの名無しさん
18/04/24 21:56:45.13 T7P20eIK.net
>>608
for文の中でstr2から値を参照しようとしてる
定義していない変数を参照することは出来ないから、空でもいいから初期化しないといけない
初期化していないと「空であるかどうか」すら判定出来ない

639:デフォルトの名無しさん
18/04/24 22:00:19.23 UZrLd4N8.net
オレ2年やけど体壊して1年休学してるから本当は3年やからな
なめんじゃねーぞ

640:遊園地
18/04/24 22:24:57.07 G5LttnIJ.net
授業で入るなら、小中学生が増えてもおかしない。
ただ、5chに来るかは来ないかだと、来ないだろうけど。

641:遊園地
18/04/24 22:26:08.73 G5LttnIJ.net
>>592
Geany使ってる。

642:デフォルトの名無しさん
18/04/24 22:32:00.39 yGK7zMMt.net
>>616
>>618
空っぽの変数として定義する必要があったってことですね。
プログラム初心者なもんで申し訳ない・・

643:デフォルトの名無しさん
18/04/24 22:41:45.33 WvdWgq+O.net
>>592
普通に秀丸使ってるけどな
なんだかんだ言っても使い慣れたエディタが楽

644:デフォルトの名無しさん
18/04/24 22:58:24.77 DKMQJI1I.net
pythonで作ったツールをexe化して配布しようとおもうんですけど
二次配布防止するにはどうすればいいですか?
今考えてるのはアイパスとコンピュータ名とかでhash値作ってサーバーに登録。
ツール起動時に毎回サーバーに問い合わせる、とかです。
ライセンスというほど大それたものでもないので、理想はサーバーつかわずに
初回に起動したそのpcじゃないと使えなくして、からくりがバレれば二次配布できちゃう
程度の精度でもいいんですけど。。

645:デフォルトの名無しさん
18/04/24 23:00:51.21 8KBFlzDM.net
exeを入れたzipにパスワードかけろ

646:デフォルトの名無しさん
18/04/24 23:01:00.08 1D4v+3Mx.net
ドングルとか?

647:遊園地
18/04/24 23:01:33.49 G5LttnIJ.net
Q
 多言語みたいに型だけ宣言して置く方法とか有りますか?

int i
print(type(i))
# era-
SyntaxError: invalid syntax

648:デフォルトの名無しさん
18/04/24 23:02:26.10 BAt1Eldp.net
HDD/SSDに署名程度で良くね

649:デフォルトの名無しさん
18/04/24 23:13:10.05 WvdWgq+O.net
>>624
大した物でないならならzipにパスワードで良いんじゃね?
そのサーバ維持やメンテナンス延々とするつもりならいいだろうがドメイン維持だけでもそれなりのコストになりそう

650:遊園地
18/04/24 23:19:38.12 G5LttnIJ.net
>>624
起動時に、ユーザー名を拾って来て、適当なファイルに暗号化して入れる。
そのユーザー名と一致しなかったら、メッセージボック等を出して終了

651:遊園地
18/04/24 23:22:31.35 G5LttnIJ.net
バツ 起動時に
マル 初回起動時に

652:デフォルトの名無しさん
18/04/24 23:24:30.20 vOUBS5cl.net
pythonをバイナリ化出来たとしても、中の依存モジュールに1つでもGPLが入ってたらソース公開しないとライセンス違反になる
結局ソース解析されるだけの様な気がするけど…

653:遊園地
18/04/24 23:24:54.14 G5LttnIJ.net
win機で動くかわからないけど、下記が動作するか調べてみたら。
import os
T=EMAIL_SUBJECT_PREFIX = '[%s]' % os.uname()[1]
print(T)

654:デフォルトの名無しさん
18/04/24 23:24:56.76 DKMQJI1I.net
>>629
zipにパスワードって解凍して中身取り出せば再配布し放題ですよね?
レンタルサーバーは広告ありの無料とかでよいかなぁと。

655:遊園地
18/04/24 23:26:30.59 G5LttnIJ.net
んごぉーーー
from socket import gethostname
T=EMAIL_SUBJECT_PREFX = '[%s]' % gethostname


656:() print(T)



657:デフォルトの名無しさん
18/04/24 23:31:45.21 8KBFlzDM.net
>>634
じゃあダウンロードサイトにもパスワードかけとけ

658:遊園地
18/04/24 23:37:44.84 G5LttnIJ.net
>>634
心配しなくても、その程度のソフトなら二次配布なんて
しないよ。

659:デフォルトの名無しさん
18/04/25 01:21:27.42 kuotvUVn.net
>>636
ダウンロードサイトであーだこーだするなら、
ダウンロードさせるexeの内部に毎ダウンロードごとに異なるパスワード(hashとか)
を組み込んで、管理サーバーでこのパスとPC固有情報を関連付けすれば良いんじゃないのか。
管理サーバーを立てるぐらいの人ならこれぐらいは頑張って実現するだろう
>>624
それでexeの二次配布防止なるのか? exeは全て共通なんだろ。それで
管理サーバーはPC登録情報からexeが2次配布利用であると判断するんだ?
PCが登録しているかはわかると思うが

660:デフォルトの名無しさん
18/04/25 02:36:01.53 3okspJRg.net
オープンソースのライセンスを無視してバイナリ配布して
さらに自分だけコピープロテクトを掛けたりしたらサイトが炎上しそうだな
importするモジュールの選択にはくれぐれも気をつけてくれ

661:デフォルトの名無しさん
18/04/25 04:16:24.63 wUGQlgZi.net
全部バイナリ化せんでも
肝心な部分だけDLL化pydとかpyc化して
それが無いと動かないようにするだけでもいいのに

662:デフォルトの名無しさん
18/04/25 05:17:35.88 uQ1fCNpFH
Pysideで画像(aaa.jpg)をフルスクリーン表示後、0.5秒後フルスクリーン表示のまま次の画像(bbb.jpg)に切り替えたいのですがどうしたらよいでしょうか?
以下プログラムではaaa.jpgが表示され、そのまま動きませんでした。

import sys
import time
from PySide import QtGui

app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('aaa.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullscreen()
sys.exit(app.exec_())

time.sleep(0.5)

app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('bbb.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullscreen()
sys.exit(app.exec_())

663:デフォルトの名無しさん
18/04/25 09:06:01.80 00WI0MSP.net
>>634
過去何度もレンサバ撤退してる
数年経過して撤退したら日常で使ってたそのソフトが急に使えなくなる
更に開発者の君自身がそのソフトに興味を失っており(良くある話)コンタクトができない
無責任すぎでしょ
独自フォーマットの開発者とか見てても思うけど数は少なくても思いつきでやって
はしご外されると作ってる人の迷惑はかなりの物がある

664:遊園地
18/04/25 10:04:00.25 aZgfWxV+.net
二次配布とか考えなくても、Vectorに登録する審査も通ると思えないけどな。

665:デフォルトの名無しさん
18/04/25 10:36:51.42 NXDHFefE.net
なんでそんなにオコなの?

666:遊園地
18/04/25 10:43:41.21 aZgfWxV+.net
5chの伝統芸だからぁあああwwwwwwwwwwww
年間利用者0とかザラだしww
  公開したら分かるんじゃないww

667:デフォルトの名無しさん
18/04/25 10:47:32.52 00WI0MSP.net
それはないと思う
ベクターにサンプルプログラムの教科書に載ってそうなスクリプト置いてるけど
毎月15件くらいDLされてる

668:デフォルトの名無しさん
18/04/25 11:44:31.69 OMoW5wMU.net
最初からwebアプリ作ればいいじゃん

669:遊園地
18/04/25 11:52:34.70 aZgfWxV+.net
俺も2年間で60ダウンロードぐらいされてる。
コメントは1件だけ来た。

タイトル
無能
本文
無能なんですね。

670:遊園地
18/04/25 11:55:04.74 aZgfWxV+.net
python,exe化して、ふぁいるりねーむ公開してたな。
絶対パス + 拡張子[指定] [XXX]付け�


671:スい名前 連番りねーむ それだけの機能



672:デフォルトの名無しさん
18/04/25 12:00:31.01 00WI0MSP.net
>>648
www
でも、コメントが付くだけでも正直かなり羨ましわ
もう何年も5個くらいおいたままになってるけど何のコメントもない
でも、俺自身が10年以上使ってるし、使い方があえてば凄く便利だし
絶対に使ってる人いる筈なんだけどなぁ・・・

673:デフォルトの名無しさん
18/04/25 12:44:42.62 SjKKaR2L.net
githubにうpしてたら勝手にforkされて勝手にバージョンアップされてた

674:デフォルトの名無しさん
18/04/25 12:50:09.33 00WI0MSP.net
>>651
その手も良いな

675:デフォルトの名無しさん
18/04/25 12:51:16.27 00WI0MSP.net
因みにどんなソフト
もし良ければ教えて
サンプルみたいなプログラムでも便利なら誰かアップしてくれるかな?
便利だから10年くらい使ってるけど、動作が微妙なんだよなぁー

676:デフォルトの名無しさん
18/04/25 13:47:37.24 sTzqaXBb.net
GAEで実行すると、datetimeを変換する際、
tzinfoになにを入れていても
time.mktime(t.timetuple())や
calendar.timegm(t.timetuple())
で、mktimeやtimegmを実行した時点で+9時間されてしまいます。
こういうものなのでしょうか?

677:デフォルトの名無しさん
18/04/25 15:21:07.84 sTzqaXBb.net
あ・・・勘違いしてました
ネットの変換ツールの方が+9時間してたようですorz

678:デフォルトの名無しさん
18/04/25 15:25:25.19 SjKKaR2L.net
GAEのTimeZoneって変だよな

679:遊園地
18/04/25 15:55:32.53 aZgfWxV+.net
,をリアルタイムで数えるには、どうすれば良いでしょうか?
現状では、
1秒毎にファイルを開いて、更新してます。

680:デフォルトの名無しさん
18/04/25 16:50:55.24 7/N1jaCm.net
>>657
その質問の仕方であなたが今なにをしていて、これから何をしたいと思っているのか解る人はいないと思う。

681:遊園地
18/04/25 18:02:02.68 aZgfWxV+.net
テキストファイルの,カンマをカウントして居ます。
URLリンク(fast-uploader.com)

682:デフォルトの名無しさん
18/04/25 19:41:46.81 D5b6boQj.net
>>659
お前はteratailできけば良いだろ

683:デフォルトの名無しさん
18/04/25 20:11:28.16 /xWlXZY2.net
>>624
本体をwww鯖に置いて、配布するコードはそれをDLして呼び出すだけのものにする
配布コードに公開鍵置いて適当な認証コードを生成して鯖に送ってバリデーションする
配布コードは適当に難読化するか、バイナリにコンパイルしておく
プロテクションを強めにするなら毎回DL、そうでなければキャッシュOKにする
DLするファイル側にも日付やIPアドレスから鍵を生成して暗号化するとか、嫌がらせの方法はある

684:デフォルトの名無しさん
18/04/25 22:47:23.82 00WI0MSP.net
str = "100 20" #<<色々な組み合わせが入る比較せよ↓だと90点しか取れなかった どこミスしたんだろ?
l = str
list = l.split(" ")
if(list[0] == list[1]):
print("eq")
elif(list[0] > list[1]):
print(list[0])
else:
print(list[1])

685:デフォルトの名無しさん
18/04/25 22:54:55.91 0wQkhGBO.net
なんか問題文が雑だな。
もっと正確な仕様があるんじゃないの?

686:デフォルトの名無しさん
18/04/25 22:55:24.68 mf+z+VbY.net
文字列で比較してるからじゃないの
問題の要求知らねえけど

687:デフォルトの名無しさん
18/04/25 22:59:26.42 00WI0MSP.net
>>663
雑?ベストな書き方ってどんなの?
>>664
某人材派遣会社のテスト問題
10個ほどテストを通したらしいけど1つだけ出力が間違ってるらしい
境界線データなどは全てパスしてる

688:デフォルトの名無しさん
18/04/25 23:05:30.22 0wQkhGBO.net
ベストっていうか一言一句たがわず元の問題文書けよ。
もしかしたらテストっていうから漏らしたらいけないのかもしれないけど。

689:デフォルトの名無しさん
18/04/25 23:15:11.67 0wQkhGBO.net
それにしても人材派遣会社でパイソンって。
Javaとかじゃないのか?
それとも言語は自由選択なのか?

690:デフォルトの名無しさん
18/04/25 23:32:08.52 00WI0MSP.net
>>666
一切漏らしてはダメなんですまん
>>667
好きな言語でOKな所

691:デフォルトの名無しさん
18/04/25 23:41:42.22 0wQkhGBO.net
ん~そうなんか。
じゃあsplitに失敗した時の挙動とかはなんか条件なかった?

692:デフォルトの名無しさん
18/04/25 23:50:36.60 00WI0MSP.net
>>669
入力値最終行の末尾に改行が1つ入ります。
とあるけど、多分これではないと思う
問題文は書けないけど他の問題↓でも上の条件はあるけど100点だった
aa = input()
list2 = aa.split(" ")
list2 = sorted(list2)
list2 = reversed(list2)
list = list(list2)
print ( int(list[0])*10+int(list[3]) + int(list[1])*10+int(list[2] ))

693:デフォルトの名無しさん
18/04/25 23:52:28.03 mf+z+VbY.net
仕様クイズやってんじゃねえんだよ
言えないなら他を当たれ

694:デフォルトの名無しさん
18/04/25 23:55:35.34 00WI0MSP.net
レベルは基礎(年収200万レベル)だから
得意な人が見ればスグに分かるかと思って・・・

695:デフォルトの名無しさん
18/04/26 00:04:33.65 A1A9qqDP.net
>>671
確かに、90点の回答から問題文(知っているが言えない)を妄想して
どこミスしたか教えてクレクレだからな。 なんかざんしんなクレクレだな

696:デフォルトの名無しさん
18/04/26 00:05:48.88 cVNoJ2TG.net
ほぼ同額ハネてるくせにずいぶん調子こいてんな人売り。

697:デフォルトの名無しさん
18/04/26 00:09:44.35 NMIp1ji6.net
正確な使用かNGだった入力データか、せめて一方はないとなぁ

698:デフォルトの名無しさん
18/04/26 00:20:56.36 zAODI6nx.net
>>675
スマン
入力データ(10種類テスト)は非公開
問題文はpaizaの規約でNG

699:デフォルトの名無しさん
18/04/26 00:23:21.97 NMIp1ji6.net
あんま思いつかないけどたとえば
str="+10 10"
でeqを出力しなきゃいけないとかかなぁ

700:デフォルトの名無しさん
18/04/26 07:29:42.61 82+EFsXj.net
>>651
おもろーい
>>650
そりゃいるんじゃね?
普通の人スクリプトかけないし
自分もやりたいことがあってググったら
Pythonのスクリプト見つけて
それがきっかけでPython始めた

701:デフォルトの名無しさん
18/04/26 07:39:06.10 L4MEI3Bo.net
知ってるかもだけど、strとかlistとかの組み込み関数の名前を変数に使わない方がいい
例として以下を挙げる
>>> str = "A"
としたあと、組込み関数str()を使うと
以下のようにエラーになる
>>> str(10)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object is not callable

702:デフォルトの名無しさん
18/04/26 13:18:56.47 1MtgAGXx.net
URLリンク(qiita.com)
上記のサイトを見ながら勉強しています
その中のword2vecを使用して学習させた結果を表示させてる部分に(学習に乱数を使っているので、同じ結果にはなりません)と表記されている箇所があるのですが、乱数はどの部分を指しているのでしょうか?
入力した値に対して毎回結果が変わってしまうのは違和感があるのですが、これが正しい考え方なのでしょうか?

703:デフォルトの名無しさん
18/04/26 14:21:52.82 LZqqVlEY.net
共同ツール 1
URLリンク(seleck.cc)
URLリンク(trello.com)
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
URLリンク(www.kikakulabo.com)
trelloのオープンソースあり
共同ツール 2
URLリンク(www.google.com)
共同ツール 3
URLリンク(slack.com)
URLリンク(www.dropbox.com)
URLリンク(bitbucket.org)
URLリンク(ja.atlassian.com)
URLリンク(sketchapp.com)
URLリンク(photoshopvip.net)
URLリンク(goodpatch.com)

704:デフォルトの名無しさん
18/04/26 16:21:20.54 y8gcXBFr.net
>>662
標準関数を変数名に使うな
コードを貼るなら、ideoneとかcodepad使え
文字列のまま比較するな

705:デフォルトの名無しさん
18/04/26 17:23:13.50 HAGSLGUl.net
pythonって遷移的なimportができてしまうのか。知らなかった。
これはちょっと嵌りポイントじゃないかなぁ?

706:デフォルトの名無しさん
18/04/26 17:33:22.83 0WGeE1H1.net
日本語でOK

707:デフォルトの名無しさん
18/04/26 17:44:22.78 3KE4uQzN.net
>>680
gensimのword2vec実装のなかで乱数を使っているということじゃないかな?
だからこそこに書いてあるコード中にはrandはない

708:デフォルトの名無しさん
18/04/26 18:02:11.11 B934JXdm.net
>>683
__init__.py だけだぞ

709:デフォルトの名無しさん
18/04/26 18:19:49.65 7TZiBj4A.net
pythonって誰が書いても同じになるように作られたはずなのになんでwith分とか作っちゃったの?

710:デフォルトの名無しさん
18/04/26 18:50:08.23 vM7mL5EC.net
足し蟹ー

711:デフォルトの名無しさん
18/04/26 19:08:52.46 3Mp4Ty/f.net
>>685
引数seedかな?

712:デフォルトの名無しさん
18/04/26 20:11:17.17 bpVzyqdZ.net
with文便利じゃん
途中でエラー出ようがハングしようが
必ずclose()されるし

713:デフォルトの名無しさん
18/04/26 20:12:25.88 bpVzyqdZ.net
あぁハングはまずいか・・・

714:デフォルトの名無しさん
18/04/26 20:23:38.37 7TZiBj4A.net
with分が許されるなら i++ も付けてほしいのよね

715:デフォルトの名無しさん
18/04/26 20:32:37.56 NMIp1ji6.net
Rubyにi++がないのと同様の理由でパイソンにもないんじゃないか?
適当だけど。

716:デフォルトの名無しさん
18/04/26 20:49:07.82 zmwnnnGF.net
why?

717:デフォルトの名無しさん
18/04/26 21:26:38.69 NMIp1ji6.net
俺もよく知らんが整数がイミュータブルでさらにオブジェクト指向が組み合わさると++が難しいらしい。
理屈は知らん。

718:デフォルトの名無しさん
18/04/26 21:54:40.18 vM7mL5EC.net
僕「それはちょっと…むずかしいです」
??「難しいかどうか聞いてるんじゃない!出来るんだな!?」
僕「はい…」

719:デフォルトの名無しさん
18/04/26 22:05:57.30 ufB3iyja.net
お願いします。
Pysideで1.jpgのフルスクリーンから1秒後に2.jpgのフルスクリーンに切り替えたいのですが、1.jpgが映ったままで止まってしまいます。
どのようにプログラムを直したら良いでしょうか?
import sys
from PySide import QtGui
import time
app = QtGui.QApplication(sys.argv)
pixmap = QtGui.QPixmap('/home/pi/Pictures/1.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap)
screen.showFullScreen()
sys.exit(app.exec_())
time.sleep(1.0)
app = QtGui.QApplication(sys.argv)
pixmap2 = QtGui.QPixmap('/home/pi/Pictures/2.jpg')
screen = QtGui.QLabel()
screen.setPixmap(pixmap2)
screen.showFullScreen()
sys.exit(app.exec_())

720:遊園地
18/04/26 22:14:31.13 zm91irPY.net
.show()

721:デフォルトの名無しさん
18/04/26 22:57:40.00 r/dul/Wf.net
遊園地召喚

722:デフォルトの名無しさん
18/04/26 23:18:26.87 zm91irPY.net
召喚される度に査問される罠

723:デフォルトの名無しさん
18/04/26 23:19:29.18 zm91irPY.net
QtGuiとか使った事ない。

724:デフォルトの名無しさん
18/04/26 23:35:00.83 sRtYULlw.net
>>697
なんか、pythonプログラムだけど、Qtのプログラムの質問な感じで
ここできくよりQtスレで尋ねたほうが良いような感じだな。
Qtはpythonで激しく使われているけど、スレレベルからしてこのスレ連中で
使っている奴は激しく少ないだろうからな。
Qtさっぱ


725:りな俺でも、上の1.jpgコード部分をコピペして2.jpgに変更では動かんと思う >>701 俺はQtをインストールすらしていない



726:デフォルトの名無しさん
18/04/26 23:44:36.11 JIIZjO4Q.net
>>702
承知しました、コメントありがとうございました。

727:デフォルトの名無しさん
18/04/26 23:55:11.10 sRtYULlw.net
>>703
Qtさっぱりな俺がぱっとコード見て妄想で答えるが、
app = QtGui.QApplication(sys.argv) はQtGui初期化だろうからで2回は不要(1回でOK)。
sys.exit(app.exec_()) は終了ってことだから、time.sleep(1.0)の前の
sys.exit(app.exec_())でプログラム終了
な気がする。

728:デフォルトの名無しさん
18/04/27 00:13:35.48 sy5ESrYC.net
すいません、前にchainerpix2pixの件で質問した者なんですが
あれからようやくCPUでは動いたものの、GPUではアウトオブメモリーになってしまいます
chainerのmnistのサンプルだとgpuは動いたので
使う画像のサイズを小さくすればいいのではと思って
get_example(self, i, crop_width=256):をcrop_width=1にしてみたのですが
同じくアウトオブメモリーになってしまいます・・・
どうしたらgpuで動くようになるのでしょうか?
あと、cudnnは使えないのでChainer_cudnnは0にしています

729:デフォルトの名無しさん
18/04/27 00:30:03.43 kiq1uvQz.net
お前はアウトオブガンチューだから。

730:デフォルトの名無しさん
18/04/27 11:03:08.04 24cBGVvy.net
このアプリは、GPU を使いますとか、
何か、そういう設定でもあるのかも

731:デフォルトの名無しさん
18/04/27 14:48:29.17 cRxeHPlk.net
matplotlibの文字化けを直そうとしてるんだけどどこにもキャッシュがない…
web見てると3つキャッシュがあるはずなのに1つしかない(fontList.Json)
こういう場合どうすればいいの…?

732:デフォルトの名無しさん
18/04/27 16:45:19.19 UfJ+DbX6.net
まずはパンツを下ろします。

733:デフォルトの名無しさん
18/04/27 16:46:42.04 l9wD2n6W.net
次にブラを上げます。

734:デフォルトの名無しさん
18/04/27 17:53:36.17 ash3pEtl.net
>>697
まるち

735:デフォルトの名無しさん
18/04/27 17:54:48.84 ash3pEtl.net
>>708
もっとしっかり探せ

736:遊園地
18/04/27 19:07:35.36 00GHpQg1.net
>>707
有るよ。
ドロールとか組み込みなら、CPUで動かすのが基本
従ってインストールした時点でGPUが無効になってるライブラリも多い。

737:デフォルトの名無しさん
18/04/27 20:19:58.99 NfYPUu/1.net
ここで初めてティッシュを用意します。

738:デフォルトの名無しさん
18/04/27 22:00:53.85 tY4aKNce.net
>>708
よく分からん時はOSのクリーンインストールから初めてmatplotlibをインストール

739:デフォルトの名無しさん
18/04/27 23:24:53.90 7d5j5plq.net
OSクリーンインストールとかww
なんというオニ畜アドバイスww

740:デフォルトの名無しさん
18/04/27 23:53:02.63 0qxmcM9A.net
もっといいPCを買えとか言われなくてよかった

741:デフォルトの名無しさん
18/04/28 01:03:41.04 pRdE14CX.net
URLリンク(forum.omz-software.com)
これの
print=1って何?意味が分からない

742:デフォルトの名無しさん
18/04/28 01:25:48.28 sVh1KXTe.net
gamefaqていうサイトのurlパラメータで、print=1ってすると、印刷向けのデータを返してくれるんではないかな。
pythonのprintとは無関係

743:デフォルトの名無しさん
18/04/28 01:29:45.66 lzDlBKGG.net
なんでそんな質問しているのかわからない
print=0だと駄目なんだろう

744:デフォルトの名無しさん
18/04/28 01:40:25.00 lzDlBKGG.net
>>719
Appending ?print=1 as a parameter, ie, URLリンク(www.gamefaqs.com)
simplifies the document for printing such that in a browser, the content appears to be plaintext (of course it's not, it's HTML).
Pythonのことを尋ねているんではなく、英語が分からんから意味が分からないと言うことだろ。

745:デフォルトの名無しさん
18/04/28 06:45:20.98 x771LapU.net
BMPファイルのヘッダ情報をいじりたい場合、
C言語だとバイナリーモードでファイルを開いて
ヘッダと同じ構造の構造体に格納→いじるっとしていたのですが
Pythonの場合はどうするのがスタンダードですか?

746:デフォルトの名無しさん
18/04/28 08:59:37.34 Mqg+X9l/.net
>>722
bytearrayオブジェクトを作って添え字でアクセスするか、
ctypesモジュールにあるCの構造体互換の機能を使うかだけど
それならCでいいじゃんって話になる
そもそもスクリプト言語でバイナリデータを操作すること自体、あんまりメジャーじゃないと思う

747:デフォルトの名無しさん
18/04/28 08:59:39.51 6G75OsfQ.net
PILを使うのはダメなの?


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch