X



くだすれPython(超初心者用) その35 [無断転載禁止]©2ch.net
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ a36e-zUMb [106.72.44.32])
垢版 |
2017/06/02(金) 22:49:01.56ID:DAT8M7/R0
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その34
http://echo.2ch.net/test/read.cgi/tech/1495971255/
VIPQ2_EXTDAT: default:vvvvvv:1000:512:----: EXT was configured
0896デフォルトの名無しさん (ワッチョイ 8b93-SZ7f [153.198.99.136])
垢版 |
2017/12/06(水) 00:00:50.30ID:b1sVJJ6/0
>>895
ありがとうございます!試してみます!
0897デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.65])
垢版 |
2017/12/08(金) 02:33:58.46ID:yOp3IF8X0
CV3で画像操作がしたくpythonをはじめたばかりなのですが、spyderでCV3がうまく動きません。どの辺が悪いのでしょうか
※環境 Windows10 + Anaconda5(python3.6) python3.5環境で使用
//
condaでopenCV3をインストールしようとしたらopenCV3がpython3.5にしか対応していないと怒られたので

conda create -n my35 python=3.5 anaconda
activate my35
conda install -c mempo opencv3
conda install spyder
というふうにしてインストール

my35環境のspyderを起動してコンソールで
import cv2
cv2.__version__
'3.1.0'

img = cv2.imread('?C:\\test\\test.jpg')
としても読み込まれず変数エクスプローラーで
 名前:img  型:NoneType  サイズ:1  値:NoneType object of buitins module
と、なり中身がないので当然
cv2.imshow('result', img) 
error: ..\..\..\modules\highgui\src\window.cpp:281: error: (-215) size.width>0 && size.height>0 in function cv::imshow
となります

//////
ちなみに
from PIL import Image
img2=Image.open('C:\\test\\test.jpg')
w,h=img2.size
print(w,h)
とすると 1920 1150 とこちらはちゃんと動きます
0898デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.65])
垢版 |
2017/12/08(金) 02:42:05.37ID:yOp3IF8X0
>>397
レスを各段階で17行目に変なゴミが入ってましたので訂正です
誤 img = cv2.imread('?C:\\test\\test.jpg')
正 img = cv2.imread('C:\\test\\test.jpg')
0899デフォルトの名無しさん (ワッチョイ cb80-8EI8 [153.187.180.175])
垢版 |
2017/12/08(金) 08:18:54.68ID:DD2Dk6IR0
画像ファイルのパスが間違っている場合,エラーは返しませんが
print img とコマンドを実行すると None と表示されます

画像を扱う
http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_gui/py_image_display/py_image_display.html

たぶん、パスがダメなんだろう。
これでやってみれば?

img = cv2.imread('messi5.jpg',0)
0901デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.93])
垢版 |
2017/12/08(金) 23:03:18.63ID:0HkgwfKx0
>>899-900
解決いたしました。

私はいつもフルパス名をファイルのプロパティのセキュリティ・タブにある
「オプジェクト名:○○○○○○」からは拾ってくるのですが
○○○○○○の前にゼロ幅文字の(UNICODE)202Aがまぎれていることがわかりました。

PILでは自動的に除外され処理されるようですが、CV3ではそのまま異常パスとしてエラーになっていたようです。
>>898の?がまさにShiftJISで姿を現した202Aだったんです

また躓きましたら質問させていただきます
0902デフォルトの名無しさん (ワッチョイ 9be7-F7Qh [175.177.4.93])
垢版 |
2017/12/08(金) 23:11:31.18ID:0HkgwfKx0
>>901
あれれれれれ
今やったらPILでもゼロ幅文字の202A付きだとエラーになりました
ウソを書いてしまってごめんなさーい
0907デフォルトの名無しさん (アウアウエー Sa13-DYuz [111.239.51.161])
垢版 |
2017/12/09(土) 12:42:11.78ID:nuTX+Pqxa
>>903
power
0909デフォルトの名無しさん (アウアウエー Sa13-3E/f [111.239.38.53])
垢版 |
2017/12/09(土) 17:41:12.23ID:OzUSTjtJa
e^xの微分か
0911デフォルトの名無しさん (ワッチョイ 6d58-oMiZ [218.228.173.143])
垢版 |
2017/12/13(水) 01:20:26.66ID:OlIk0vU10
from random import randint
from tkinter import *
# 変数・定数の定義
COLS, ROWS = [30, 20] # ステージのサイズを定義
CW = 20 # セルの描画サイズ
data = [] # ステージデータ
for y in range(0, ROWS): # ステージをランダムに初期化  data.append([(randint(0, 9) == 0) for x in range(0, COLS)])

data.append([(randint(0, 9) == 0) for x in range(0, COLS)])
の意味がよく分かりません

データ型がdataの関数?append()の中に  (randint(0, 9) == 0) を入れる意味がわからないです
試しにここだけ抜いてもエラーが出るので必要なのは分かるんですが……

これはネットに落ちていたライフゲームのプログラムです
最初に、ステージをランダムに初期化し、その後、ライフゲームのルールに沿って、300ミリ秒ごとにシミュレーションを行うプログラムの一部です
0913デフォルトの名無しさん (ワッチョイ f5a8-/xmB [180.38.104.101])
垢版 |
2017/12/13(水) 04:55:09.26ID:93IgVeuK0
matplotlibについてなのですが

ある単語について、横軸に日付、縦軸に発言者として、
発言者ごとにどの日に単語を発言したのかというのを
描写しようと思っているのですが
matplotlibを全くと言っていいほど使ったことがなく
どのようにしたら良いのかわかりません。
教えていただけますでしょうか?
0914911 (ワッチョイ 6d58-oMiZ [218.228.173.143])
垢版 |
2017/12/13(水) 07:58:19.00ID:OlIk0vU10
>>912
ありがとうございます
dataの中身を表示とdataの中のリスト数、その中の要素の数を表示するんですよね
そのなかでfalse とtrueがランダムに出ているところで (randint(0, 9) == 0) が役立ってるんだろうと思うんですが、
([(randint(0, 9) == 0) for x in range(0, COLS)])
, も入っていないのにどうやってrandintの数が使われているのかさっぱりです
調べても どれも,が入っている例ばかりで……

つまり、文法的な意味がわからないということです
説明ベタですみません
0916デフォルトの名無しさん (JP 0H49-yrkK [202.253.111.210])
垢版 |
2017/12/13(水) 08:46:50.66ID:NEKJL9xMH
>>914

1.
from random import randint
print(randint(0, 9))

何が出力されるでしょうか。

2.
from random import randint
print(randint(0, 9) == 0)

何が出力されるでしょうか。

3.
print([True for x in range(0, 30)])

何が出力されるでしょうか。

4.
from random import randint
print([(randint(0, 9) == 0) for x in range(0, 30)])

何が出力されるでしょうか。
0917デフォルトの名無しさん (ワッチョイ 2d23-DYuz [122.215.159.129])
垢版 |
2017/12/13(水) 12:43:49.99ID:caPUZ5ER0
import numpy as np
import pandas as pd
df = pd.Series(np.zeros(366), index=pd.date_range('13/12/2017', periods=366))
df['2018-1-1'] = 1
df.plot()
plt.show()

エラーになります助けてorz
0919デフォルトの名無しさん (ワッチョイ 1b21-IpD3 [119.238.148.202])
垢版 |
2017/12/13(水) 14:33:38.48ID:4KXZfZ3x0
>>911
a.以下のコードは・・・
from random import randint

COLS, ROWS = [30, 20]
CW = 20data = []
for y in range(0, ROWS):
----data.append([(randint(0, 9) == 0) for x in range(0, COLS)])
----print(data)

b.このコードとほぼおなじことです。
from random import randint

COLS, ROWS = [30, 20]
data = []
for y in range(0, ROWS):
----for x in range(0, COLS):
--------data.append(randint(0, 9) == 0)
----print(data)

インデントは-に置き換えてあります。
0920デフォルトの名無しさん (ワッチョイ 1b21-IpD3 [119.238.148.202])
垢版 |
2017/12/13(水) 14:34:12.15ID:4KXZfZ3x0
内包表記と呼ばれる書き方です。
最も外側の () はappendメソッドのための()なので気にしない。
次の[]はリストデータ型で処理するという意味。
[]の中を見るとfor節があります。
これを見つけたら内包表記が使われていると覚えましょう。

以下Pythonドキュメントの該当部分のURL
https://docs.python.jp/3/tutorial/datastructures.html#list-comprehensions

https://docs.python.jp/3/tutorial/datastructures.html#nested-list-comprehensions

ドキュメント要約するとbの書き方は、人にとってもPCにとっても面倒だから内包表記作ったよ。
0921デフォルトの名無しさん (ワッチョイ 1b21-IpD3 [119.238.148.202])
垢版 |
2017/12/13(水) 14:35:53.05ID:4KXZfZ3x0
Pythonドキュメントを読んだら次のURLを読んで実行しましょう。
http://postd.cc/comprehensions-in-python-the-jedi-way/

めまいを起こすようなら以下のURLで処理を可視化しましょう。
http://www.pythontutor.com/visualize.html#mode=edit

ここまでやりこんだら、"集合 外延 内包"でググろう。
または以下のURLを読みましょう。
http://www.geocities.jp/k27c8_math/math/set_theory/another_how_to_expression_set.htm
そうするとなぜ","がないのかではなく、
なぜ"|"がないのかと質問すべきだったとわかるじゃないかな?

文字多すぎと怒られたので分割しました。
0923デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/15(金) 07:18:26.74ID:VeI40ieM0
win32comについて教えてください。
現在PythonスクリプトでAdobe InDesignの自動化プログラムの開発をしています。

import win32com.client
indd = win32com.client.dynamic.Dispatch("InDesign.Application.CS5_J")
doc = indd.Documents.Add()

で動作するのは確認しています。
やりたいことは、上記の「doc」の種類(COM上のクラス?)を特定したいのです。

イメージとしては、
doc._ole_type_(←実際にはないメソッド)
>> "Document"(←結果にCOMクラス名)
こんな感じに戻り値を求めたいのです。

どなたか、詳しい方、よろしくお願いいたします。
0924デフォルトの名無しさん (ワッチョイ 0e3b-KBvp [183.76.110.2])
垢版 |
2017/12/16(土) 12:24:15.73ID:mmje4ODI0
>>923
http://python.6.x6.nabble.com/Problem-using-win32com-client-Dispatch-on-Win7-64bit-td1957248.html
http://timgolden.me.uk/pywin32-docs/html/com/win32com/HTML/PythonCOM.html
http://timgolden.me.uk/pywin32-docs/html/com/win32com/HTML/docindex.html
https://stackoverflow.com/questions/10496681/python-idispatch-client-without-type-library
https://books.google.co.jp/books?id=fzUCGtyg0MMC
0926デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/16(土) 19:01:08.83ID:cReZoebJ0
>>924
ホントにありがとう
が、print(doc)では目的は目的は果たせませんでした(print objectはファイル名が返りました)が、
貼っていただいたドキュメントからCLSIDからCOMオブジェクトのクラスを調べる目途がたちました。
(makepyやってませんでした、すみません)
Rubyのwin32oleだと簡単に調べられたので簡単な方法があると思っていたのですが、win32comは大分様子が違いますね。

さー、rubyから移植+Opencv連携開発がんばるぞー
0928デフォルトの名無しさん (ワッチョイ 0e7b-Icwu [119.15.148.144])
垢版 |
2017/12/17(日) 10:13:55.95ID:PHyu6h2W0
>>927
>タイプライブラリなくてもか?
http://jongware.mit.edu/idcs5js/index_Assignment%20Suite.html
http://indesign.cs5.xyz/dom/domtree.html
このあたりを見ながらと、

https://www.artonx.org/data/asr/
これをインストールして

require 'win32ole'
indd = WIN32OLE.new("InDesign.Application.CS5_J")
doc = indd.documents.add
p doc.ole_type.name
--> "Document"
(実際はアプリケーションの選択オブジェクトを調べて分岐させます)
で、調べながら作ってました。
RubyはActiveScriptingやOpencvライブラリの対応が良く分からなくて、
忙しい中、調査に時間かけるくらいなら、既に実績のあるPythonに移行しようかとおもってます。
0929デフォルトの名無しさん (アウウィフ FF1b-r1k3 [106.171.78.22])
垢版 |
2017/12/17(日) 16:33:40.71ID:XxtCNzg/F
print(doc.__repr__())
print(doc.__str__())
0930デフォルトの名無しさん (ワッチョイ 8e4b-bHD0 [39.111.201.160])
垢版 |
2017/12/18(月) 17:53:48.60ID:MhWfJDZS0
初心者の素朴な疑問なんだけど全てのライブラリは標準ライブラリの組合せで出来てるの?
0931デフォルトの名無しさん (アウアウエー Sa7a-r1k3 [111.239.42.222])
垢版 |
2017/12/18(月) 18:08:49.74ID:cTfL64uCa
素朴な回答だけどCで書かれてるのも多い
0932デフォルトの名無しさん (ワッチョイ 8e4b-HVIX [39.111.201.160])
垢版 |
2017/12/18(月) 18:14:06.93ID:N/0vuXs80
>>931
標準ライブラリの組み合わせで全てのプログラムは理論上組めますか?
0935デフォルトの名無しさん (ワッチョイ 8e4b-HVIX [39.111.201.160])
垢版 |
2017/12/18(月) 19:29:21.38ID:N/0vuXs80
ではライブラリを使わずに全てのプログラムを作ることが出来るってことですね
0939デフォルトの名無しさん (アウウィフ FF1b-KBvp [106.171.83.156])
垢版 |
2017/12/19(火) 11:00:45.67ID:tMk24jKNF
>>934
呼び出すモジュールは作れるというか
あると思うけど
シ−ムレスっていうのは文法から言ってだめなんじゃね?
ヒアドキュメントはシームレスとは言わないだろ?
0940デフォルトの名無しさん (ワッチョイ 5b23-r1k3 [122.215.159.129])
垢版 |
2017/12/19(火) 18:15:06.80ID:WQVin5/10
うむむ
地雷踏んだっぽいわ
Anaconda で conda 使いまくってたら
from PIL import Image が DLL 見つからないエラーはくようになった

conda uninstall pillow
conda install pillow
とかやってももう治らないω

もちろん pip は一度も使ってない
0942デフォルトの名無しさん (ワッチョイ 5b23-r1k3 [122.215.159.129])
垢版 |
2017/12/20(水) 16:40:33.06ID:oMTP7XXu0
conda install --channel https://conda.anaconda.org/conda-forge pillow
で動くようになりました
同様に以前動いてたはずの CV3 も動かなくなってたので
conda install --channel https://conda.anaconda.org/conda-forge opencv
したらこっちも動くようになりました
なんか関係ないのも数えきれないくらい沢山入れ替わったっぽいけど
身も心もまっさらになった気分です
0943デフォルトの名無しさん (ワッチョイ 3fd2-KysX [27.143.212.212])
垢版 |
2017/12/21(木) 22:00:26.56ID:Wruq1qgz0
初歩的な質問ですいません
http://codepad.org/KGtLHDhb
Tkinterを使いプラスボタンが押されたら+1されるプログラムを
練習に作っているのですが
ラベルの値が最初の0のまま変更されません
コンソールの方では動いているのですが・・・
ラベルの更新の仕方を教えてください、おねがいします
0944デフォルトの名無しさん (アウアウエー Sa9f-ajlQ [111.239.51.29])
垢版 |
2017/12/22(金) 18:05:03.61ID:bOdX3AhVa
ラベル更新だけじゃなくて
色んなツッコミ所がありすぎて面倒なので
コメントするのあきらめる
0946デフォルトの名無しさん (スププ Sd5f-iAkY [49.98.64.195])
垢版 |
2017/12/22(金) 18:32:37.29ID:bWUflki2d
>>942
たくさんの男がお前の上を通り過ぎていったけど、今は処女になったということだな。
0947デフォルトの名無しさん (ワッチョイ 3fd2-KysX [27.143.212.212])
垢版 |
2017/12/22(金) 21:25:15.78ID:iJ2PO/6B0
>>944
ひどいプログラムなのは許してください・・・

>>945
ありがとうございます
参考にさせていただきます!
とても助かりました
0952デフォルトの名無しさん (ワッチョイ 43e8-buzn [210.132.50.253])
垢版 |
2017/12/26(火) 18:29:36.82ID:WBWOri7N0
あるグループウェアの特定のページが欲しくてChrome+seleniumでログイン。
そのあとrequests.getでページの中身をスクレイピングしようとしたら「未ログイン」のページが落ちてきた!

セッション情報が共通化されていないと知ってショックでした。。
0968デフォルトの名無しさん (アウアウエー Sa72-66yX [111.239.42.133])
垢版 |
2018/01/01(月) 14:05:52.82ID:yaUpEKWza
必至だな
0972デフォルトの名無しさん (ワッチョイ 964b-7ecw [39.111.201.160])
垢版 |
2018/01/01(月) 18:36:08.61ID:2E1PT4i/0
pyqtの勉強しているのですがこのコードでなぜボタンが出ないのでしょう?
class Default(QWidget):
def __init__(self):
super().__init__()
self.initUI()


def initUI(self):
self.setGeometry(300,300,300,300)
self.setWindowTitle("ウィンドウ")
self.setWindowIcon(QIcon("python.png"))
self.show()

class Btn(QWidget):
def __init__(self):
super().__init__()
self.initUI()


def initUI(self):
btn = QPushButton("ボタン",self)
btn.resize(btn.sizeHint())
btn.move(50,50)
btn.show()


if __name__ == "__main__":
app = QApplication(sys.argv)
d = Default()
b = Btn()
sys.exit(app.exec_())
0973デフォルトの名無しさん (ワッチョイ 964b-7ecw [39.111.201.160])
垢版 |
2018/01/01(月) 18:36:41.19ID:2E1PT4i/0
importは行数の関係で省かせてもらいます
0974デフォルトの名無しさん (ワッチョイ ee53-p/Ag [121.94.33.41])
垢版 |
2018/01/01(月) 19:04:32.40ID:MNtQNWjC0
何をしたいのか分からないけれど
2つのウィンドウをそれぞれ出したいならbtn.show()の下にself.show()追加する
1つのウィンドウでボタンを追加したいだけならBtnクラスのinitUI(self)の中味を
DefaultクラスのinitUI(self)に追加してBtnクラスを消す
0979デフォルトの名無しさん (JP 0H2a-Zn6g [153.143.148.81])
垢版 |
2018/01/03(水) 11:21:49.29ID:/NNrb8F/H
pandas dfの特定列を選択範囲として
ある文字列が含まれている行の中身を置き換えたいんですが
どういう操作をしたらいいんでしょうか
いまは一度スライスして条件分岐ループに通して新規series化してマージしてますが、手間です
0986デフォルトの名無しさん (アウアウアー Sa4f-ro8Q [27.85.206.254])
垢版 |
2018/01/04(木) 16:03:32.48ID:Tb7uig0Fa
ipythonで
l = [1, 2, 3]
l
と入力すると、
Out[2]: [1, 2, 3]
と中身が(長ければ改行して)表示されますが、これは何の特殊メソッドが呼ばれているのでしょうか?__str__をオーバーライドしても表示は変わりませんでした。
0987デフォルトの名無しさん (ワッチョイ bfed-hL1C [119.228.121.24])
垢版 |
2018/01/04(木) 16:26:18.94ID:DfAlkQQT0
__repr__()
レス数が950を超えています。1000を超えると書き込みができなくなります。

ニューススポーツなんでも実況