Pythonのお勉強 Part57

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/06/25(月) 09:57:59.24ID:aY7uj4w5
Pythonオフィシャルサイト
http://www.python.org/

■前スレ
Pythonのお勉強 Part56
http://mevius.5ch.net/test/read.cgi/tech/1519430841/

次スレは>>980が挑戦する

ソース貼れるサイト
https://pastebin.com/ ペーストビン
https://ja.osdn.net/pastebin/ OSDNコピペ ログインしないで投稿すると一週間で自動削除
2018/08/03(金) 12:15:00.41ID:V1yM7DW8
誤差を気にする金融系などではdecimal型を使う
270デフォルトの名無しさん
垢版 |
2018/08/03(金) 13:45:30.95ID:SxfGFWQF
>>> A = [1,2,3,4,5,6]
>>> B = [1,1,1,1,1,1]
>>> C = [0,0,0,0,0,0]
>>> M = lambda L: reduce(lambda a, b: (a[0] and a[1]==b, b), L[1:], (True, L[0]))[0]
>>> M(A)
False
>>> M(B)
True
>>> M(C)
True
2018/08/03(金) 13:55:16.98ID:RwupvFW0
分かり辛ぇw
2018/08/03(金) 13:59:30.99ID:LaSZsIIq
reduce久しぶりに見た気がする
2018/08/03(金) 14:14:56.63ID:mVd1VDRo
ヒント
隣との差が全てゼロ。
ゼロはブーリアンのコンテキストでFalse。
274デフォルトの名無しさん
垢版 |
2018/08/03(金) 16:08:26.14ID:ONmmuyPQ
"Removed reduce(). Use functools.reduce() if you really need it; however, 99 percent of the time an explicit for loop is more readable."
275デフォルトの名無しさん
垢版 |
2018/08/03(金) 16:22:09.21ID:SxfGFWQF
>>273
差の二乗を全部足せばいいのかな
2018/08/05(日) 15:18:50.50ID:lC8FCKmX
eval()の中ってスコープどうなってんだ?
関数ないでつかっても関数の引数が notfoundになるんだけど
2018/08/05(日) 15:40:20.48ID:6kqZ2+ag
https://docs.python.org/3.6/library/functions.html#eval
に書いてあるが、globals引数とlocals引数をどのように与えるかによって変わる
どちらも指定しなかった場合はglobals=globals(), locals=globals()
と同等になるので、関数スコープの変数にはアクセスできない
関数スコープの変数にアクセスしたいなら、localsにはlocals()を指定する
2018/08/05(日) 15:44:47.24ID:lC8FCKmX
>>277
それすると importしたmoduleが使えなくなりません?
2018/08/05(日) 16:40:46.04ID:6kqZ2+ag
試してから発言しろ
2018/08/05(日) 17:27:26.17ID:lC8FCKmX
eval(str, locals(), globals())でやるのな

locals()だけ指定してたわ、(^^ゞありがとう
2018/08/06(月) 19:24:16.27ID:I+j+/eN4
自作ライブラリmylibの中でimport numpy as npとしてた場合にこのmylibをimport mylib as mlとインポートすると
ml.と入力した時点でエディタ(Spyder)の補完機能でnpまで候補に出てくるのどうにかならない?
アンダーバー付けてプライベート扱いにすれば候補には出ないけど面倒臭い
2018/08/06(月) 22:09:24.63ID:D1O0dP1g
pip show モジュール名
でlocationのとこが格納されている所確認して
python開いて
import sys
print(sys.path)
でlocationのとこ出るんですけど
いざimport モジュール名やると
モジュールないよーって出る解決方法ありますか?
2018/08/07(火) 00:26:54.71ID:LnSY7891
Python勉強する上でこれはやっとけっての何?
Django、Kivy、OpenCVとか以外にどんなのが重要?
2018/08/07(火) 00:51:10.65ID:QZJ4WUVF
その3つから何がしたいのかさっぱり伝わってこないから何とも
2018/08/07(火) 00:53:37.26ID:v9qnpkk8
これやっとけってのなら
正規表現
ある意味python関係ないが
2018/08/07(火) 00:56:44.80ID:QZJ4WUVF
>>282
例外メッセージとスタックトレースとimportを略さないで貼って
2018/08/07(火) 00:57:10.77ID:4iKfM0Q7
算数勉強する上でこれはやっとけての何?
微積、統計、集合論とか以外にどんなのが重要?
2018/08/07(火) 00:59:31.14ID:v9qnpkk8
>>287
四則計算
こういう質問流行ってんの?
289デフォルトの名無しさん
垢版 |
2018/08/07(火) 05:48:00.15ID:OlmXtX1U
これやっとけってのなら
C
numpy
290デフォルトの名無しさん
垢版 |
2018/08/07(火) 05:49:05.73ID:OlmXtX1U
>>287
論理学
291デフォルトの名無しさん
垢版 |
2018/08/07(火) 06:21:40.90ID:J73zBdha
>>287
線形代数
292デフォルトの名無しさん
垢版 |
2018/08/07(火) 08:35:42.19ID:tzJ4hHmy
282です
エラーメッセージがTraceback (most recent call last):
File "C:\Users\ユーザー名\Desktop\python_file\teeest.py", line 1, in <module>
import ccxt
ModuleNotFoundError: No module named 'ccxt'

スタックとレースが
import ccxt
from pprint import pprint

bitflyer = ccxt.bitflyer()
pprint( bitflyer.has )
です。
一度pip unistall ccxt
してノーキャッシュしてもダメでした。

Name: ccxt
Version: 1.17.82
Summary: A JavaScript / Python / PHP cryptocurrency trading library with support for 100+ exchanges
Home-page: https://ccxt.trade
Author: Igor Kroitor
Author-email: igor.kroitor@gmail.com
License: MIT
Location: c:\users\ユーザー名\appdata\local\programs\python\python36-32\lib\site-packages
Requires: certifi, web3, yarl, aiodns, aiohttp, setuptools, requests, cchardet
Required-by:
これがpipshowで得たデータで
'C:\\Users\\ユーザー名\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages'
sysのパス(省いてる)ここが表示されるので探してるとは思うのですが、、、
293デフォルトの名無しさん
垢版 |
2018/08/07(火) 10:43:11.81ID:AJOeK/rw
ノーキャッシュ?
2018/08/07(火) 12:43:41.02ID:H018pYSb
ノーマネーでフィニッシュです。
2018/08/07(火) 17:20:26.46ID:87f61bOa
ノーライフ、ノーパイ
2018/08/07(火) 19:09:47.04ID:Do1Khizm
Python 3 64bitで動くKinect v2のライブラリ無いですか?
PyKinect2は32bitしか駄目らしくて良いのが見つからないです
297デフォルトの名無しさん
垢版 |
2018/08/07(火) 19:14:52.45ID:pTM8y/Ns
ctypes
2018/08/07(火) 20:34:44.64ID:5i41CNK0
パス・PC のユーザー名など、システムで使うものに、

半角英数字以外の文字を使っているとか?
299デフォルトの名無しさん
垢版 |
2018/08/08(水) 04:16:51.88ID:XhOfYtOw
同名のディレクトリ造ってるとかな
2018/08/08(水) 07:07:30.59ID:ToNH1TU5
pythonのインタラクティブモード(ここでは普通のpythonが開く)では問題なく動いて色々調べたのですが
どうやらプログラム実行時のみanacondaのpythonで実行されてるみたいです

コマンドプロンプト上から
anaconda pythonと普通のpythonの実行を都度変えることとかは可能でしょうか?
2018/08/08(水) 07:46:52.02ID:wuV8vo1r
python exeをフルパスで実行
2018/08/08(水) 08:40:13.32ID:tvvGK0R5
環境書いてないけどWindowsでpy.exeの関連付けが狂ってるんだろ
303デフォルトの名無しさん
垢版 |
2018/08/08(水) 13:51:56.39ID:rFVUI3be
>>287
ベクトル解析 位相
2018/08/08(水) 21:23:30.31ID:JpG8OlEk
>>287
算術
2018/08/09(木) 01:50:00.23ID:npdA8jjV
python3 画像にテキストを埋め込むライブラリってどれがいいの?

Stegano 0.8.5

steganographer 2.0.0

steganography 0.1.1 ←python3でpip install できなかった
2018/08/09(木) 04:40:45.99ID:2+chG11t
Snapdragon636
2018/08/12(日) 03:51:49.43ID:0fc0/SGL
python始めてすぐ躓いた
atomにprint('hello')と書いて.pyでデスクトップに保存したんだけど、
コマンドプロントでpython起動してからドラッグドロップするとエラーでline1とかunexpected character after line continuation characterって出てhelloが出ない
Windows10のpython3です
原因と対処法わかります?
2018/08/12(日) 06:15:19.73ID:686l8iey
utf-8
2018/08/12(日) 08:06:03.41ID:0fc0/SGL
atomも文字コードの設定いるんですな?
2018/08/12(日) 10:50:50.06ID:0fc0/SGL
設定画面ないです…
311デフォルトの名無しさん
垢版 |
2018/08/12(日) 12:44:54.66ID:rtSL/abo
行末に\
がなんか悪さしてるんじゃね
2018/08/12(日) 13:14:46.45ID:RVXWbOdk
>>310
あるわ。ぐぐれ
313デフォルトの名無しさん
垢版 |
2018/08/12(日) 14:09:48.35ID:4DtrO8/8
>>307
スクリプトの実行の仕方が間違っている
起動したPythonにスクリプトのファイル名を渡すのではなく
Pythonを起動するときにスクリプトのファイル名を渡す

3.4.1.3. スクリプトから起動する
https://docs.python.jp/3/using/windows.html#from-a-script

たとえば「デスクトップ」に「hello.py」という名前でファイルを保存したなら
コマンドプロンプトで
cd "%USERPROFILE%\Desktop"
などとやってデスクトップのディレクトリへ移動し
py hello.py
で実行

またはファイルのフルパスをPythonのコマンドに渡して実行
py "%USERPROFILE%\Desktop\hello.py"
2018/08/12(日) 14:13:33.69ID:7gq5Do1f
ああ、引数じゃなくてプログラムとしてパスを与えてるのか
2018/08/12(日) 14:22:01.46ID:Krb1pl67
>>307
君もクジラ飛行机の本読んでるやろ?
俺も同じとこで躓いたけど、はっきり言ってどうでもいいから無視して先行ったわ
2018/08/12(日) 17:29:10.37ID:6F6W/tUK
よく分からんけどラズパイでPythonやってた時は最初改行コードのCR-FLのCRがエラーの元になってたっけな
Windowsではそういうのでエラー出た記憶ないけど

てかWork領域くらい
C:\Work\Pythonとかにしてからやれよと言いたい
2018/08/12(日) 18:43:10.19ID:f+bxV/sn
FLって何?
2018/08/12(日) 19:40:00.97ID:6F6W/tUK
LF
2018/08/12(日) 20:48:34.00ID:3CoD0CIp
意外にWindowsの人少ないのかな?
俺はWindowsじゃないから>>307はわからない
2018/08/12(日) 21:00:04.60ID:6F6W/tUK
てか起動してからファイルを渡すんじゃなくて
> python hello.pyって呼ぶべきなんだよね
>>>←このプロンプトでファイルを呼ぶとそりゃエラーになるわ
2018/08/12(日) 21:20:12.96ID:sFpP4hR5
いや、とりあえず>>313やってみて駄目だったらまた書いてくれってことだと思う
322デフォルトの名無しさん
垢版 |
2018/08/12(日) 22:34:59.16ID:K4yivhs3
MacでATOMはどのみち使い難いからなぁ
2018/08/13(月) 00:00:20.00ID:apzVmg0C
せめて celeron にしてくれ。
2018/08/13(月) 00:55:09.74ID:TNNCsAc6
\は半角¥で代用できるんですよね?出せなくて
2018/08/13(月) 01:02:20.07ID:HrB0RGw5
>>323
まさかとは思うけどギャグで言ってんだよな?
2018/08/13(月) 01:14:24.21ID:qz3pg1Pr
windowsだと\じゃなくて¥じゃないの?
2018/08/13(月) 01:24:23.88ID:lm99Nd9T
ヒント:ASCII配列とJIS配列
2018/08/13(月) 01:29:58.76ID:TNNCsAc6
>>313
cd desktopってやってからトラッグドロップしたらできた!
ビギナーすぎて仕組みはわからないけど多分毎回ファイルがあるところに移動しないとファイルを見つけられないってことなのかな?
ありがとう!
2018/08/13(月) 02:13:43.04ID:aWjwgJVg
「コマンド 引数」

ruby .\a.rb
ruby C:\Users\Owner\Documents\a.rb

上は、カレントディレクトリからの相対パス。
先頭に「.\」を付ける

下は、絶対パス

cd で、カレントディレクトリ・今着目している場所を変えられる。
数十の基本コマンドを知らないと、話にならない
2018/08/13(月) 05:03:21.58ID:TeAe32XI
Winで初心者だったらIDLEで書いてそのままIDLEで走らせろよ
それで用が足りるだろ
2018/08/13(月) 05:21:00.66ID:CQ0/cSAn
vscodeオススメしとく。いろいろ便利になるとおもうよ。
2018/08/13(月) 07:13:28.98ID:PFh1twe3
てかそこで躓くのはエディタとかIDEの問題ではなく
シェルとかコマンドラインの知識が足りないんだからubuntu入れてターミナルに慣れることから始めた方がいい

win10のWSLでもいいのかな?
2018/08/13(月) 07:59:09.15ID:ECHWlVDH
いまだと開発者モードオンにしたら(今でも必要かはよく分からんが)
WindowsアプリストアからLinux Subsystemはよりどりみどりで選べるよ
2018/08/13(月) 15:05:42.16ID:z6+TJcGX
>>324>>326
こっちの専ブラでは \ (おそらくそっちの画面では \ の半角) が ¥ の半角で表示されるので読んでて笑える。
2018/08/13(月) 15:08:19.02ID:z6+TJcGX
>>333
今は開発者モードONにしなくてもできる筈。
2018/08/14(火) 15:58:28.92ID:w7/teWcl
スクレーピングしたデータをDBに保存したい場合ってなんかいいpaasみたいなのある?scrapy動かしてそのままDBに保存できるやつ
337デフォルトの名無しさん
垢版 |
2018/08/14(火) 16:49:39.70ID:wyATYME/
GAE
2018/08/14(火) 17:08:35.47ID:w7/teWcl
>>337
無料枠でいけます?
2018/08/14(火) 18:44:27.46ID:3OkmF3Ne
それはお前がどのくらいデータを収集するのか次第だろ…
2018/08/14(火) 20:21:44.91ID:Wl4cT3iI
世界中のエロ画像よ!俺のHDDに集まれ!
341デフォルトの名無しさん
垢版 |
2018/08/15(水) 02:39:13.27ID:xcMWAh3t
IDLEのダメなところは
行番号が分からないところだよな
342デフォルトの名無しさん
垢版 |
2018/08/15(水) 03:49:50.48ID:BN2igdfy
>>340
なんというパワフルな願望
343デフォルトの名無しさん
垢版 |
2018/08/15(水) 07:53:37.04ID:+LAc8jW9
>>341
行番号付けられんかいのー?
2018/08/15(水) 09:08:02.56ID:d9KZECZI
>>341
vimで良いじゃん。
2018/08/15(水) 13:40:47.10ID:SGNbZPzy
>>341
idleつかうならspyderのほうがいいんじゃない?
2018/08/15(水) 19:50:58.06ID:B6/TbaoC
ちょっと教えてください
GeminiPDAのTermuxUbuntuでPhantomJS使ったスクレイピング試してます。

pythonで対話モード?だとget後のdriver.page_sourceで正常に
ページソースの取得が出来ますけど、
ファイル渡して実行すると下記のような空のHTML?しか返ってきません。

<html><head></head><body></body></html>

googleのTOPで試しましたけど、他のWebページでも同じなようです。
get後にwait入れたりもしてみましたが同じでした。
この場合他にどういった事を試せば良いでしょうか?
スクレイピング勉強始めたばかりでお約束等手探り状態です。
各APバージョンはPython3.6.5とSelenium3.8.0、PhantomJS2.1.1です。
2018/08/15(水) 20:12:34.23ID:ShDcx1x6
googleは止めておいた方が...
すぐアク禁にされるから
不便だよ
2018/08/15(水) 20:26:22.26ID:veEQGj3P
>>347
スクレイピングするとアク禁喰らうのかよ?
迂闊に出来んなぁ
2018/08/15(水) 20:36:03.30ID:Lt9AX4rb
今からWebアプリの開発をPythonで始めたいのですが、どのような開発環境がいいでしょうか?
現状は次の通りです

・3年ほど前から、自宅鯖で自分専用のWebサーバーを運用しています。主な用途は仕事(自営)の実績データ整理です。出先からスマホで入力することが多いので、Webサーバーにしています
・CENTOS6.5+apache2.2+postgresql8.4+PHP5.3で運用しています
・自宅にはサーバー機が1台とデスクトップ機(win10 64bit)が1台あり、LANで繋がっています
・デスクトップ機上のIDE(現在はNetbeans、以前はaptana)でソースを書いて、FTPでサーバー機に転送し、テストはデスクトップ機がLAN経由でサーバー機に接続して行っています

考えられるのは、従来通りの方法か、デスクトップ機上に仮想マシンを作ってIDEもそこに置くか、IDEはwindows上に置いておいて仮想マシンはテスト専用にする、くらいですがそれぞれの長所・短所がよく分かりません

なお、デスクトップ機でlinuxを使った経験はほとんどありません。OSのインストール時に試しにx-windowをちょっと触ったくらいです
2018/08/15(水) 21:17:01.34ID:B6/TbaoC
>>347
1秒に何度も実行するわけでは無いので大丈夫じゃないですかね
でも忠告どおりyahoo等と入れ替えて実施します
UserAgentも変えましょうかね
ありがとう
2018/08/15(水) 21:23:20.51ID:pSIls4/k
>>349
Win10で世界に何かを公開するとかはやめとけ やめとけ やめとけ
素直にレンタルサバ(中身はLinux系)借りとけ
2018/08/15(水) 21:32:14.48ID:PyNbth/v
>>349
自家サーバーにこだわりが無ければ
適当なPaaSを選んで使うのが楽
お遊び程度なら無料枠で充分動く
2018/08/15(水) 21:34:04.83ID:HF637GWT
>>351
鯖はcentosじゃないの?
2018/08/15(水) 21:38:50.36ID:Lt9AX4rb
>>352
サーバーの方に手を入れるつもりはなくて、PHPで作ってたのをPythonに切り替えるにあたって、開発環境をどうしようかって話です

>>353
その通りです
2018/08/15(水) 22:03:51.64ID:pSIls4/k
>>354
Sakuraエディタおk
2018/08/15(水) 22:32:09.76ID:HF637GWT
>>354
開発環境のセットアップはanacondaインストールから始めるといいかも。
エディタはanacondaに入ってるspyderが個人的には好きだけど、pycharmを勧める人も多い。

contosにデフォで入ってるpythonがバージョン3じゃなかったりするので、python -Vでバージョン確認して2.7とかだったら、改めてpythonをインストールしたほうがいいかも。
2018/08/16(木) 01:42:46.33ID:+1zp+zJl
pycharmはweb開発は有料だし、webだと.py 以外のファイルを弄る機会も多いからvscodeの方がいいな
2018/08/16(木) 11:14:34.74ID:EK+Nvgo+
vscode、関数戻り値の型ヒント書くとハイライタのフォントカラーがおかしくなる。
職場のvscodeでは正常なんだが、自宅のwin、macの両方ともダメ。
原因調べるのまんどくさ。
359デフォルトの名無しさん
垢版 |
2018/08/16(木) 11:15:56.47ID:wiNukf+g
>>347
+1
2018/08/16(木) 11:40:18.66ID:UPsIxMpm
スクレイピングして
リストとかディクショナリーとかにデータ入れてプリントすると文字列出てくるけど
これは上書きされてるって事?それとも[a.b.c.d,,,,,, ]ってどんどん増えてくニュアンス?
361デフォルトの名無しさん
垢版 |
2018/08/16(木) 12:05:21.54ID:uNA0ay3k
TabError: inconsistent use of tabs and spaces in indentation
Pythonはこういうエラーを出してくるからいちいち面倒くさい。
強迫神経症になりそう。
362デフォルトの名無しさん
垢版 |
2018/08/16(木) 12:11:57.01ID:wiNukf+g
>>361
めったにみないぞ
2018/08/16(木) 12:34:38.58ID:O4QN+duh
>>346
あーっと自己解決かな?
get後にsleepで何秒か待つとソース取れました。
リダイレクトされたのか裏でなんか起動中なのか確認しようと思って
page_sourceの後current_url取ろうとしたら今度は下記エラー…
〜 Unable to load Atom 'execute_script' 〜

謎は深まった…orz
Seleniumスレあったけど過疎化してるね。ここで良いのかな…
2018/08/16(木) 12:53:02.04ID:plLGYyaN
vscode django remote debug でググると色々出てくる

つーか素のPHPとSQLでゴリゴリ書いてたのか、フレームワーク使ってたのかで大分移植難易度変わると思うけど
元がdb使ってたかわからんが、もし使ってたらdjangoは独自ORマッパーのModelありきだから一から作り直した方が早いと思う
2018/08/16(木) 18:17:49.39ID:uyy9Zvn9
7月発売予定だったDjango本が9月に延期したと思ったら来年1月にまた延期してる
2018/08/16(木) 19:21:00.85ID:XXEsT8PI
>>361
pycharm使わないからそういうエラーで時間を無駄にすることになるんだよ
367デフォルトの名無しさん
垢版 |
2018/08/16(木) 19:26:23.59ID:xTRm/dST
pandasで階層インデックス、MultiIndexのデータ形式に随時行を追加していきたいような時は、appendするよりも、新しいデータでdfを作って、それとマージしたほうがいいのかな?
そもそも、階層インデックスのdfにappendするやり方がわからない...
2018/08/16(木) 21:30:56.14ID:4UFesjQJ
pycharmじゃなくともちょっと気の利いたテキストエディター使えばいいだけだぞ
2018/08/16(木) 21:48:43.86ID:VzTKEac+
>>361
タブでネストの深さ管理してるのにそれを滅茶苦茶にするのが許されるとか致命的だろ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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