くだすれPython(超初心者用) その35 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は 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 某サイトで連載中のコード?解説されてますがな。
print(data)
print(len(data), len(data[0]))
として出力して、再度解説を読みましょう matplotlibについてなのですが
ある単語について、横軸に日付、縦軸に発言者として、
発言者ごとにどの日に単語を発言したのかというのを
描写しようと思っているのですが
matplotlibを全くと言っていいほど使ったことがなく
どのようにしたら良いのかわかりません。
教えていただけますでしょうか? >>912
ありがとうございます
dataの中身を表示とdataの中のリスト数、その中の要素の数を表示するんですよね
そのなかでfalse とtrueがランダムに出ているところで (randint(0, 9) == 0) が役立ってるんだろうと思うんですが、
([(randint(0, 9) == 0) for x in range(0, COLS)])
, も入っていないのにどうやってrandintの数が使われているのかさっぱりです
調べても どれも,が入っている例ばかりで……
つまり、文法的な意味がわからないということです
説明ベタですみません >>913
そのデータはcsvなりなんなりで既にできてて
読み込みも済んでるのか? >>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)])
何が出力されるでしょうか。 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 >>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)
インデントは-に置き換えてあります。 内包表記と呼ばれる書き方です。
最も外側の () は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にとっても面倒だから内包表記作ったよ。 import numpy as np
import pandas as pd
df = pd.Series(np.full(366, np.nan), index=pd.date_range('13/12/2017', periods=366))
df['2018-1-1'] = 1
df.dropna().plot()
plt.show()
解決しました本当に有難うございました 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クラス名)
こんな感じに戻り値を求めたいのです。
どなたか、詳しい方、よろしくお願いいたします。 >>924
ホントにありがとう
が、print(doc)では目的は目的は果たせませんでした(print objectはファイル名が返りました)が、
貼っていただいたドキュメントからCLSIDからCOMオブジェクトのクラスを調べる目途がたちました。
(makepyやってませんでした、すみません)
Rubyのwin32oleだと簡単に調べられたので簡単な方法があると思っていたのですが、win32comは大分様子が違いますね。
さー、rubyから移植+Opencv連携開発がんばるぞー >Rubyのwin32oleだと簡単に調べられた
タイプライブラリなくてもか? >>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に移行しようかとおもってます。 print(doc.__repr__())
print(doc.__str__()) 初心者の素朴な疑問なんだけど全てのライブラリは標準ライブラリの組合せで出来てるの? >>931
標準ライブラリの組み合わせで全てのプログラムは理論上組めますか? >932
クロードシャノンによれば0と1のbitがあれば組めるよ python2からpython3のコードをシームレスに呼び出す
あるいはその逆って出来んの? ではライブラリを使わずに全てのプログラムを作ることが出来るってことですね >>932
理論上で良いなら標準ライブラリはosとsysがあればあらゆるプログラムが書けるよ >>934
呼び出すモジュールは作れるというか
あると思うけど
シ−ムレスっていうのは文法から言ってだめなんじゃね?
ヒアドキュメントはシームレスとは言わないだろ? うむむ
地雷踏んだっぽいわ
Anaconda で conda 使いまくってたら
from PIL import Image が DLL 見つからないエラーはくようになった
conda uninstall pillow
conda install pillow
とかやってももう治らないω
もちろん pip は一度も使ってない 起動中のpythonのsys.path上にpillowはあるのか? conda install --channel https://conda.anaconda.org/conda-forge pillow
で動くようになりました
同様に以前動いてたはずの CV3 も動かなくなってたので
conda install --channel https://conda.anaconda.org/conda-forge opencv
したらこっちも動くようになりました
なんか関係ないのも数えきれないくらい沢山入れ替わったっぽいけど
身も心もまっさらになった気分です 初歩的な質問ですいません
http://codepad.org/KGtLHDhb
Tkinterを使いプラスボタンが押されたら+1されるプログラムを
練習に作っているのですが
ラベルの値が最初の0のまま変更されません
コンソールの方では動いているのですが・・・
ラベルの更新の仕方を教えてください、おねがいします ラベル更新だけじゃなくて
色んなツッコミ所がありすぎて面倒なので
コメントするのあきらめる >>942
たくさんの男がお前の上を通り過ぎていったけど、今は処女になったということだな。 >>944
ひどいプログラムなのは許してください・・・
>>945
ありがとうございます
参考にさせていただきます!
とても助かりました pythonプログラムを実行する時、
python *.py
と
ipython *.py
で違いはあるんですか? ある数列から、指定割合の位置の数値を取り出したい
たとえば
x=10 ; y=100 ; z=8
のとき、range(x,y)の8%の数値が欲しい
どうするのが高速でしょうか >>949
x + round((y - x)*z/100) はー素晴らしい
自分、数学苦手なもので、全然思いつきませんでした
多謝 あるグループウェアの特定のページが欲しくてChrome+seleniumでログイン。
そのあとrequests.getでページの中身をスクレイピングしようとしたら「未ログイン」のページが落ちてきた!
セッション情報が共通化されていないと知ってショックでした。。 insertで登録して、findで登録されてるか調べる
順序はそのまま、YES or NO
https://ideone.com/udcKZC
どうすれば良いでしょうかお願いします。 >953
if a in i[1]:
を
if i[1] in a:
にする。
a は、リストでなく、セットにした方が計算量的に有利。
a = set()
として、
a.append(i[1])
を、
a.add(i[1])
にする。 プログラミングのプの字も知らないカスですが
パイソン始めましたよろしくお願いします エクセルに搭載されるかもと聞いて勉強始めましたよろしくお願いします まじでやるならarXivの文献辿りながら基本のアルゴリズムgitで見つけてコード解析
なんちってならオライリーでもやってわかった気になってハナホジしたら 単体で¥だけを出すにはどうすればいいのですか??
クォーテーションでくくったり手前にr付けても
エラーになってしまいます
print(r"¥100")ならオーケーなのにprint(r"¥")でやるとエラーになります raw stringなのにエスケープが機能している…?
俺の知ってるPythonと違う気がするな >>969
print('\\')
じゃ駄目なん? 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_()) 何をしたいのか分からないけれど
2つのウィンドウをそれぞれ出したいならbtn.show()の下にself.show()追加する
1つのウィンドウでボタンを追加したいだけならBtnクラスのinitUI(self)の中味を
DefaultクラスのinitUI(self)に追加してBtnクラスを消す >>969,970
リファレンスマニュアル見てみたら、r"¥"は無効だって書いてあった
2.4.1 String and Bytes literals
raw stringが奇数のバックスラッシュで終わるのがダメだそうだ
2.7も3.6も同じ Brythonって便利そうですけどどんな感じですか?
ブラウザ上で動く艦これのルーレット?みたいなのを練習で作ってみようと
思ってるんだけど何か良い方法ありますか? pandas dfの特定列を選択範囲として
ある文字列が含まれている行の中身を置き換えたいんですが
どういう操作をしたらいいんでしょうか
いまは一度スライスして条件分岐ループに通して新規series化してマージしてますが、手間です df['特定列'][like '文字列']='新しい中身' Packt PublishingのPython本バンドル $15で18冊と6本のビデオ
ジャンル的には基礎、Web開発、データサイエンス、AIと満遍なく網羅してる
https://www.humblebundle.com/books/python-by-packt-book-bundle >>> import pandas as pd
>>> df = pd.DataFrame([[1, 'aaaa'], [3, 'aabcz'], [4, 'abcd']], columns='n s'.split(' '), index=[10, 20, 30])
>>> df
n s
10 1 aaaa
20 3 aabcz
30 4 abcd
>>> df['n'][df['s'].map(lambda x: 'abc' in x)] = 9
>>> df
n s
10 1 aaaa
20 9 aabcz
30 9 abcd mapのかわりにapply使っても同じ結果になるみたいだけど
内部動作も同じなのかな >>983
うちの環境だとdf['n']df['s']のとこでloc使えエラーが出てしまったので
sel=df['s'].map(lambda x:'abc' in x)
df.loc[sel,['n']]=9
これでいけました。大変助かりました
ありがとうございました ipythonで
l = [1, 2, 3]
l
と入力すると、
Out[2]: [1, 2, 3]
と中身が(長ければ改行して)表示されますが、これは何の特殊メソッドが呼ばれているのでしょうか?__str__をオーバーライドしても表示は変わりませんでした。 >>987
__repr__をオーバーライドしたら表示を変更できました。
どうもありがとうございました。 このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 220日 21時間 58分 40秒 レス数が1000を超えています。これ以上書き込みはできません。