このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その37
http://2chb.net/r/tech/1521271945/ 全くPythonのことを知りませんが、Windowsでの開発環境(IDE)は何が良いのでしょうか?
最近主に使ったのは、VisualStudio(C#)とAndroidStudio(Java)です。
>>2
たぶんはやってるのは PyCharm
でも おれは せっかくだから この Sakuraエディタを つかうぜ! >>2
VisualStudioに慣れている人なら、2015か2017のインストーラーでPythonツールを追加インストールするだけで
ソリューションにPythonプロジェクト(.pyproj)が組み込める
Python環境を複数入れてても設定で切り替え出来るし、構文チェックやデバッガも使えるから楽 前スレの >>988
株価予測は分類系のAIとはモデル構造が違うから、まずRNNモデルの入出力方法を覚える
慣れてきたらRNNの代わりにLSTMを使ってみる
ChainerでのRNN構築が難しそうなら、Kerasの方が簡単かもしれない
Kerasなら同じプログラムのままでGPU演算も自動判別して切り替えてくれる(GeForce系のグラボがあれば) pythonで入力待ちしないでキー入力を受けとりたい(キー入力判定したい)んですが良い方法ありますか?
環境はPython3.6 Win10 PowerShellです
>>6
あー、追加でPython環境を入れられますね
VSに慣れてるから、これが一番とっつきやすいかな >>6
VisualStudioいいよね
デッバクが楽すぎる これが圧倒的に
使いやすいと思うけどいまいち使われてない気がする >>10
デッバクとか書いちゃう人の言うことは信じていいの? bugをバグと呼ぶ奴はdebugのこともデバッグではなくデバグと呼ぶべき。
>>18
だよな。
ついでに英語のDebugのDeの発音はデじゃなくディーに近いのにな 2ちゃんねる時代は順番や文字を入れ替えて書くのが当たり前だったけど、最近はそうでもないのかな
オパーイとかと一緒だろ
日本人は耳が変だらんから
マルティ->マルチ、ディーバッグ->デバッグと聞こえるし
日本語をローマ字にするときでもrの発音やfの発音になるのを割り当てるからな
日本語の富士山はFujiyamaよりHujiyamaの方が日本語の発音に近いのに
>>13
見逃してた。いつぞやのケブンリッジと同じでやはり最初と最後が合ってると途中の文字順が違ってても騙されるな。 >>21
オパーイやセクースは
何かタイプして楽しいじゃん。
デッバグはイけてないだろ。 最近超話題の聞き取り、Laurel and Yanny
日本人が月桂樹(ローレル)を英語で言ったら、ネーティブにはYannyと聞こえるらしいからな
日本人はCambridgeのmをンと発音するニダで
ネーティブがそれ聞くとCanbridgeってなってなにそれなんだろう
pythonユーザーに関してはyoutube(日本人はようつべと発音)とかの英語のビデオで
Python学習が普通になったから、英語の発音や聞き取り力がかなり高い奴が多いらしいよな
>>12
ありがとうございます。確かにthreadingを利用してマルチスレッド化→入力待ち関数とループ処理に分割、というのが良さそうですね。
Windowsではwin32api等を利用すると標準入力などで出来ることが増えそうですが、初心者には難しいですね… 条件式で全角数字を判別する方法って正規表現使う以外に考えられますかね?
if re.match(r'[0-9]+', target):
が他に書き方あるかって話?
実用的かはともかく、setにして差集合を取る方法でも書ける
>>33
初心者に難しいって言ってたらいつまでも初心者だぞ
薄皮一枚破った先に素晴らしい世界があるのに >>36
どこまでやる気なのか知らないけど、ほとんどの場合PyTorchやKerasやChainerで十分でしょ
自分にはこれこれこういう理由でTensorflowが必要だと言えるようになってからTensorflowを始めるといいよ >>2
pytharmがいいよ
簡単に一瞬で日本語になるし無料だし便利なの sqlalchemyのsessionってクラスなの?
それともsessionmakerのインスタンスなんですか?
pywin32でエクセルを開くと、稀に「呼び出し先に拒否されました」と表示され
エクセルのオープンに失敗する。
原因がわからん。
同じような経験した人います?
既にExcelアプリで開いてるファイルを
書き込みモードで開こうとしたとか?
Excelは書き込みロックしやがるから
ロック状態が残ってるのかも
UnLockerとかでデッドロックプロセスがないか確認
[ [x1,y1], [x2,y2], ........]というリストがあるとして
y成分をある一定以上になるまで足していった時のx成分はどうやって求めたらいいでしょうか?
>>46
一定以上になった所でxをreturnしてしまえばいいと思います 超既出かもしれませんが。
SpyderやIDLE上で実行するとメインスレッドが終了してもデーモンスレッドが終了しないまま実行され続けるのは
SpyderやIDLE固有の問題ですか?
コマンドプロンプト上で実行した場合では正常に終了するのですが。
以下のようなコードです。
import threading
import time
def daemonThread():
while True:
print('デーモンスレッド実行中')
time.sleep(1)
daemon_thread = threading.Thread(target=daemonThread, daemon = True)
daemon_thread.start()
for i in range(5):
print('メインスレッド実行中')
time.sleep(1)
print('メインスレッド終了')
インデントに失敗しました。
全角スペースでインデントしているので半角スペースに直して頂けると幸いです。
import threading
import time
def daemonThread():
while True:
print('デーモンスレッド実行中')
time.sleep(1)
daemon_thread = threading.Thread(target=daemonThread, daemon = True)
daemon_thread.start()
for i in range(5):
print('メインスレッド実行中')
time.sleep(1)
print('メインスレッド終了')
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
BYX24
@propertyについて質問です。
@property def x(self):と
@x.setter def x(self,value):
が実装されたTestクラスについて、
この引数valueはTestクラスによって作られたインスタンスtest_instanceの変数(プロバティメソッド)test_instance.xの値が代入されるという考えでよろしいのでしょうか?
以下がその例です。
class Test:
def __init__(self):
self.number = 0
@property
def point(self):
return self.number
@point.setter
def point(self,value):
if value > 50:
print("You succeeded")
else:
print("You failed")
math = Test()
print(math.point)
math.point=66
>>>0
>>>You succeeded
引数valueにTestクラスのインスタンスであるmath.pointが渡されるまでの過程があまりしっくり来ません。
>>52
@propertyはデコレータ(@)を利用したproperty(fget=直下の関数)が実体のクラス変数です
データデスクリプタプロトコルを実装しており、インスタンス変数が如く扱われると発動します
https://docs.python.org/ja/3/howto/descriptor.html
有り体に言えば、同名インスタンス変数への読み書きが、設定した関数に転送されます
math.point = 66は実質type(math).__dict__['point'].__set__(math, 66)として処理され
valueには代入の右辺が直接入るので、インスタンス変数としてのpointは介在できません >>52
Spyderのデバッガで処理を追っていくと、@point.setterの行に辿り着いた時点で変数エクスプローラーを見ると
valueの値が66になってる
その認識で良いんじゃないの >>53
>>54
上のコードを
print(math.point)
math.point=66
print(math.point)
で実行したところ、
>>>0
>>>You succeeded
>>>0
と出力されたので、何か理解できたような気がします。少なくとも違和感はなくなりました。
お二方ともご丁寧にありがとうございましたm(__)m fizzbuzz書けるぐらいまでになりました
データ分析関係で何かプログラム組みたいと思っているんですけど、何かオススメありますか?
やっぱりWindowsよりMacの使ってる方が多いですか?
win10、python3.6.5を新規でインストールしました。
hello.word!迄は勉強しました。
スクレイピングがしたくてpipで導入しようとしてるんですが上手く行きません、コマンド教えて頂けませんか?
pythonはどうやってインストールしたのでしょうか
スクレイピングは具体的に何のライブラリを使おうとしてるんでしょうか
上手く行かないとは具体的に何が起こる(った)んでしょうか
何か表示されているようなら具体的にかつ正確に教えて貰えますか
ハローワールドからは、かなり遠いよね。イスカンダルに行くほどではないが。
だがよく見てほしい。>>60はハローワールドすらまともに出来ていない。 >>62
超ゆとり教育受けた者は自分のいるところからどれぐらいの遠いのか、どれぐらい大変なのか
分からんからな。で、遠くて行くのが大変でもママ(車や交通機関を使って、さらに、おんぶして)連れて行ってだからな。
俺も超ゆとり教育を受けたから、30半ばなのにママ連れて行って・何とかしてのお坊やおっさんだよ,orz
おかげで、いつまでもママママの超初心者 初心者はPythonの対話型プロンプトからpip実行しようとしてハマることが多いかも
公式PythonならコマンドプロンプトかPowerShellからpip installを実行、
Anacondaなら仮想環境のプロンプトでpip installするか、AnacondaNavigator使って入れればいい
>コマンドプロンプトかPowerShell
俺の経験から超ゆとり教育受けた奴は何それだよ
Win10ならコルタナさんに「Power Shellを起動」って頼むだけで良さそうだけど
os.rename(dir_path, new_name)
PermissionError: [WinError 5] アクセスが拒否されました。: 'F:\\名前\\古い名前' -> 'F:\\名前\\新しい名前'
Windows7で別のドライブのフォルダをリネームしようとしましたが、
管理者権限でプロンプトから実行しても拒否されます
どうしてでしょうか
>>70
ありがとうございます
この処理の前にopenでリネーム対象フォルダ内のファイルを開いていたのが原因だったようです
os.renameの前にclose()を呼んだら無事に動きました >>67
時期にコルタナに「XXのスクレイピングして」と頼むだよ。
>>68
俺らよりユルタナとか尻の方がずっと頭良くて、お前、馬鹿・無知すぎだと言われるからな
(お前、自分でPower Shell・コマンドプロンプトの起動すらできないのか) python言語によるプログラミングイントロダクションって本初心者にどうですか?
pythonのチュートリアルはよくできてるな。
最新版のPDFファイルどっかに落ちてない?
>>75
その質問には答えられんが一つ忠告しておく
ここはお前のような出来る奴が居ていい場所じゃない >>76
だよね。
俺らのようなド底辺にまじわると>>75のような出来る奴でもあっという間にド底辺になるからな。
>どっかに落ちてない?
もう、底辺らしくなってきているし
>>75
Pythonを使って自分でチュートリアルをPDF変換すれば良いだろう 自分の好きな画像を覚えさてそれに似たような画像を自動で集めてくるみたいなプログラムを作りたいんですが、そのために必要な知識技術が取り入れられる初心者向けの本はありますか?オライリーの入門Pythonを一周した位の初心者なのですが、、
>>81
作ったら不味いヤツなんですか?便利そうだなーとか思ったんですが >>84
そんなにですか
重くなるだろうなとは思ってたので50枚取ったら終わりみたいに軽めの限界は設定しようとしてたんですが甘かったですね
しかし目標が無くなってしまった レンタル糞サーバー使ってるサイトの身にもなってくれ
>>86
レンタル糞サーバーが糞なのは陸の孤島ならぬネットの孤島やからやぞ
世間のトラフィックの99.9999999999999%はおまえんとこに影響ないからw >>80
クローラーは、wget を参照
画像判別は、OpenCV とか、
類似の定義のアルゴリズムの研究だけで、軽く数年以上掛かる
どういう画像が似ているのか、その定義が一番難しい たくさんPython野郎が遊び感覚でクローラー作ってネットを重くしているのか
トータルではgoogle以上にあっちこっちのサイトにクレクレしてたりしてな
scrapyをホストするサービスが存在している時点でその辺は察してくれ
スレ違いだったらごめんなさい
自然言語処理をweb等を見様見真似で勉強してます
その中で共起ネットワーク図というものを見かけて面白そうだったのでやってみたいのですが、まだスクレイピングなどはやった事がないのでまずは青空文庫等のテキストデータを使って共起関係にある単語を表示してみたいと思っています
形態素解析するところまで出来たのですがその先の部分はサンプルなどを見つけられなくて行き詰まっています…
使うべきモジュールなども分からない状態なのですが、どのようにして共起している単語の抽出が行えるでしょうか?
初歩的な質問で申し訳ないのですがよろしくお願いします
>>93 です
>>94
>>95
ありがとうございます
やはり基本的な知識なのですね
今日帰宅時に本屋さん寄ってみます
>>96
ありがとうございます
何から手をつけて良いのか分からなかったので流れを教えて頂けてすごく嬉しいです
まずは”出現単語リストの直積のリスト”の部分について調べてみます
周りに聞ける人が誰も居ないのでお金を払ってでも…と毎日思います… pyautoguiを使ってるんですが、日本語キーボードの無変換キーを入力する方法ってないですか?
>>96
重ねて質問してすいません
出現単語リストの直積リストを作る
という部分はitertoolsを使って作る事が出来ました
次の要素毎にjaccard係数を求める部分についてなのですが引数として2つのリストを与える必要があるのかなと思うのですが、この時引数とするリストは直積リストともうひとつは何に当たるのでしょうか?
形態素解析したリストになるのでしょうか?
せっかく流れを示して頂いたのにすいません
基本的な考え方も分からないんだと痛感します… プログラミング全くの未経験で手を出してしまった…どうしよう
本増えるのはいいけど入門書はいらん
もっと突っ込んだ内容のやつが増えて欲しい
numpyの配列の形を変えるにはどうしたらいいですか?
motoというshapeが(3,5)の配列があったとして
array([[1., 2., 3., 4., 5.],
[6., 7., 8., 9., 10.],
[11., 12., 13., 14., 15.]], dtype=float32)
この配列を以下のようなshape(3,5,1)の配列にしたいです
array([[[1., 2., 3., 4., 5.]],
[[6., 7., 8., 9., 10.]],
[[11., 12., 13., 14., 15.]]], dtype=float32)
配列をコピーする用に配列をつくってはみたものの
ここにどうやって形の違う配列をコピーすればいいのか分からないです
zr = np.zeros((3,5,1)).astype("i")
宜しくお願いします
やりたいことが何か判らんが
>>> import numpy as np
>>> a = np.array([[1., 2., 3., 4., 5.],
... [6., 7., 8., 9., 10.],
... [11., 12., 13., 14., 15.]], dtype='float32')
>>> b = np.array([a])
>>> c = a.reshape(3,5,1)
>>> a.shape
(3, 5)
>>> b.shape
(1, 3, 5)
>>> c.shape
(3, 5, 1)
>>110
ありがとうございます
ほげー、一行で出来るんですね・・・
まさかforで回すわけでもないしと悩んでました
numpyでグレースケールで採り込んだら
RGBのカラーの時の値が入ってた枠が無くなってしまって
ほげほげしてたところでした・・・助かりました。 ipythonでインデント(ブロック)の終了ってどーやんの?っと
docstringを使おうとしたらエラーが起きた
"""ほにゃらら"""
の形式で書いたんだけど、無情にも
SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0x83 in position 1: invalid start byte
と返された。誰か助けて
なるほど、教えてもらったキーワードでググって
なんとなく理屈が見えたきた
ありがとう
x = [0, 1, 2] みたいなリストを並び替えると
1番目 [0, 1, 2]
2番目 [0, 2, 1]
3番目 [1, 0, 2]
4番目 [1, 2, 0]
5番目 [2, 0, 1]
6番目 [2, 1, 0]
となるけど単純に f(x,3) -> [1, 0, 2] みたいに呼び出す方法ありますか
>118
itertools で全部列挙しておいてから、m番目を返すコード。
リストxの長さを n とすると、O(n!)の計算量になるので、nが小さい値でしか使えない。
また、メモ化してるので、x にいろいろなのがくるとメモリが足りなくなる。
memo = dict()
def f(x, m):
x = tuple(x)
if x not in memo:
memo[x] = list(itertools.permutations(x))
return memo[x][m]
桁DPの要領でm番目を直接求めるアルゴリズムもあるとは思う。
>リストを並び替えると
>...略...
>となるけど
なんで確定してんの?
Numpy(またはリスト)で
HOGE =
[[AB], [CD], [0]
[AB], [CD], [0]
[AB], [CD], [0]]
AB:A〜Bの範囲で乱数
CD:C〜Dの範囲で乱数
のような形で2重配列を生成する方法有りませんか?
出来ればnumpyの関数を使うなりで高速に処理したいです
>>129です
np.array([np.random.rand(1000) * 40 + 30, np.random.rand(1000) * 150 + 50, np.zeros(1000)])
としたら望んだ動作をさせることが出来ました
これが正攻法ですかね? リストでa=[[]]の状態から
a=[[1、1、1]、[2、2、2]、[3、3、3]]の状態にしたいんだけど
a[1].append(2)とするとindex out of rangeになる。
どうすればよかったの?
何で分からないのか全く分からないが
最初にa.append([])すればいい
多分indexが1から始まると思ってるんでしょう。
Pythonってオブジェクト指向なの?
クラスあるだけ?
スクレイピングについて質問があります。
環境python3.6.5
(requests、beautifulsoup4インストール済み)
win10 64 pro
写真のコマンドをShellで表示させる事は出来ました。
コマンドプロントで表示させようとすると一瞬表示されて落ちます。
hello worldは表示されたままです。
コマンドプロントで表示させるにはどうすれば良いのでしょう? 昼間っからプロントの外席で酔っぱらえる暮らしがしたーい
>138
a = input()
をプログラムの最終行に追加して、ユーザーからの入力待ちにしたら、コマンドプロンプトが閉じずに開いたままになると思うよ。
>>148
あんま見てないけどjson.loadsにリスト渡せれたっけ? 失敗する時のurlは確かに自分が想定しているものか?
失敗する時のエラーコードはいくつ?
curlを打っても同じか?
>>150
URLはチェックしたつもりでしたが、完全に見落としていたようです。
ホスト名がおかしくなってたのが原因でした。恥ずかしい・・・
お騒がせしまして誠に申し訳ありませんでした。 jupyterlabってjupyternotebookの上位互換でいいの?
どうせおしっこしか使い道のないちんちんなんだからそんなに気にすんな
pythonで開発してるんだけど
'ascii' codec can't encode characters in position 10-14: ordinal not in range(128)
が出るんだけど文字コードがおかしいから?
日本語が含まれているファイルをアップロードするとことで出てるんだけど。
_aaa = '会社一覧.txt'
_aaa.encode('utf-8')
とかしてもダメで困ってます。
Python3.6です。
サーバはcentos7です。
ファイル名を英数字のみにしたら問題なくアップロードできるんです。
教えてください。
クラスを作って、それにデータを入れてって、
それをList配列にセットしていったら全部同じ内容になってしまいます。
調べてみたら参照になっているらしく、実態がひとつしかない?という
ことらしいのですけど、内容の異なるクラスをListに
保持するということはできないんでしょうか?
C/C++ 以外の言語は、オブジェクトの中身がコピーされない。
オブジェクトの参照しかコピーされないから、参照は同一の実体を指す
中身までコピーしたいのなら、clone, deep copy みたいなメソッドを使って、
内側のオブジェクトまで、再帰的にコピーしていかなければならない
もし中身が参照だったら、その実体もコピーしなければならない
>>158
しこしこすると、気持ちいいぞ
やってみ 158じゃないけど、やってみた。
痛くて全然気持ちよくない。
[Hoge(n) for n in range(10)]
>>172
セフレがペロペロしてくれるずる剥け野郎で悪かったな 独学プログラマーという本でpython勉強してるけど。ディープラーニングやるなら、統計学とか数学知識もだいぶ要求されるんですね。ディープラーニングなんて言葉もさっき知ったばかりだけど、目的もなくプログラミング勉強して仕方ないよね。
お前らはなんの目的をもって、python勉強してるん?
俺以外にも波乗り人がいて安心した
仕事は大工で転職したい訳でもないけど、ローテクの仕事してる人間として。プログラミングに憧れがあったんだよねー。
エロ画像収集にしか使ってないから偉そうなことは言わない
プログラミングできる大工とかかっこよすぎなので禁止します!
WEB+DB PRESS vol.104、1,480円 + 税
Python, Unity 特集
import numpy as np
import matplotlib.pyplot as plt
import sympy
theta0 = sympy.Symbol('theta0')
theta1 = sympy.Symbol('theta1')
x_data = np.array([383530, 456474, 533496, 551308, 588788 ]).astype("float32")
y_data = np.array([22064192, 25691911, 27234521, 28403118, 27597193 ]).astype("float32")
def f(x):
return theta0 * x + theta1
error = np.sum((f(x_data) - y_data) ** 2)
diff0 = sympy.diff(error, theta0)
diff1 = sympy.diff(error, theta1)
theta0, theta1 = sympy.solve([diff0, diff1], [theta0, theta1])
print(theta0, theta1)
質問です。
簡単な線形回帰の問題を数学的に解きたいのですがtheta0とtheta1の出力がtheta0,theta1
になってしまいます。
どこが間違ってるのでしょうか?
自己解決しました
戻り値が辞書型なようです
すいません
>>183
立ち読みしたけど
このスレ見てるひとには物足りないと思うよ 一部のwebサイトのソースで日本語が \u0000 みたいな形式になってることがあるんですけど
これを普通の日本語として表示させるにはどうすればいいですか?
そのままconsole.logにぶっ込めばいいよ。
console.log('\u6584')
=> 斄
すいません質問の仕方が悪かったです
IDLEに対して"\u6587\u7ae0"と入力すると
"文章"と表示されるのはわかっているのですが
\u6587\u7ae0 という文字を含むファイルを読み込んでも
"\\u6587\\u7ae0" と表示されるだけなので
これをなんとかして"文章"に変換してスクリプト内で自由に扱えるようにしたい
ということです
あと環境はWin10 Python3.6.0です
codecs.decode(foo, 'unicode-escape')
スパイダーにパイゲーム入れたらスパイダーの実行ファイルが2つになった
spider.exeとspider(pygame).exeだ
これ普通なの?
追加するたびにexeが増えるとかおかしくない?
>>192
質問者じゃなかったけどちょうちょうちょうたすかった
すばらしい!!! (・∀・) ありがとう!!! cloud9で開発を始めましたが、自作関数のインポートでなぜかIDEに怒られます。
具体的には以下のコードで、main.pyの3行目[from my_lib import mlib]の左に
赤いバツ印が付いて’No name 'mlib’ in module 'my_lib'と表示されます。
ただ、そのまま実行すると特にエラーも出ず、mlib.○○でmy_lib.py内に記述した
関数も問題なく使えてますが。。。どこがおかしいのでしょうか?
<main.py>
#!/usr/bin/env python3
# coding: utf-8
import json
from pprint import pprint
import time,datetime
import sys
sys.path.append("/home/ec2-user/environment/my_lib")
from my_lib import mlib (←怒られる)
mlib = mlib()
上の続きです。
<my_lib.py>
#!/usr/bin/env python3
# coding: utf-8
import math
from decimal import *
import sys, traceback, time, datetime, csv
import requests, json, urllib
from pprint import pprint
class mlib:
def __init__(self):
self.output_path = "/home/ec2-user/environment/my_output/"
def aaa(self,〇〇〇)
〇○○〇〜
すいません、文章に誤りあり、×がつくのはmain.pyの3行目ではなく、
下から2行目です。
誤:
main.pyの3行目[from my_lib import mlib]の左に
赤いバツ印が付いて’No name 'mlib’ in module 'my_lib'と表示されます。
正:
main.pyの下から2行目[from my_lib import mlib]の左に
赤いバツ印が付いて’No name 'mlib’ in module 'my_lib'と表示されます。