くだすれPython(超初心者用) その39
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
垢版 |
2018/08/24(金) 07:50:35.97ID:VD4/++xS
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その38
https://mevius.5ch.net/test/read.cgi/tech/1526522954/
0851デフォルトの名無しさん
垢版 |
2018/11/10(土) 23:22:42.45ID:sSiPAoa8
>>850
そういうのは需要があるから実装されてるんだよ
Noneなんて返されても無駄なチェックコードが増えるだけ
単にelseで適切な値を返すだけでいい
0856デフォルトの名無しさん
垢版 |
2018/11/11(日) 10:30:49.61ID:ZIQY97Xr
ttps://ja.wikipedia.org/wiki/%E7%A6%8F%E5%B2%A1IT%E8%AC%9B%E5%B8%AB%E6%AE%BA%E5%AE%B3%E4%BA%8B%E4%BB%B6
0857デフォルトの名無しさん
垢版 |
2018/11/11(日) 11:34:11.51ID:LFgZgESJ
へーっ、こんな事件があったんだな
フルボッコされての犯行か
ならまともな反論もできなくなった>>853とか言ってやれよww
0860デフォルトの名無しさん
垢版 |
2018/11/11(日) 13:36:01.34ID:96wp+TZd
>>828
まさか普段ruby使ってる?
0862デフォルトの名無しさん
垢版 |
2018/11/11(日) 16:41:23.18ID:kuiXddTN
ファイルに定義されている関数名を知る方法ありますか?
関数名だけです。
0863デフォルトの名無しさん
垢版 |
2018/11/11(日) 17:56:29.41ID:96wp+TZd
globals()
locals()
0864デフォルトの名無しさん
垢版 |
2018/11/11(日) 23:32:22.24ID:ARqR0CiK
>>828
Ruby ではメソッド名に、! がつく、破壊的メソッドが、nil を返すことがある。
破壊的メソッドとは、レシーバ自身を変更するもの

line.chomp! # 末尾の改行を削除する
line.empty? # 空行かどうか?

chomp! は、末尾に改行が無くて、削除しなかった場合に、nil を返す

line.chomp!.empty?

上記のようにメソッドチェーンすると、nil から、empty? メソッドを呼び出そうとして、
エラーになるから、メソッドチェーンできない

ただし、最近のバージョンでは、nil 許容演算子が追加されて、
メソッドチェーンしてもエラーが起きなくなった

jQuery では、メソッドチェーンしてもエラーが起きない
0866デフォルトの名無しさん
垢版 |
2018/11/12(月) 21:09:17.74ID:XFjJOyuw
pd.read_html(url)で読み込んだテーブルのある列をtable.sort(by= )でソートしたんだけどその結果が
0
1
2
3
4
1
2
3
みたいに微妙な並び替えになっちゃうのはデータにどんな原因があるの?
0867デフォルトの名無しさん
垢版 |
2018/11/12(月) 22:43:29.16ID:ku9n7fSu
#シート名取得
all_sh = book.sheetnames

#シート名が「ss」で終わるものを抽出
all_sh_ss = [s for s in all_sh if s.endswith('ss')]
print(all_sh_ss)

・・この後、シート名が「ss」で終わるシートだけから
特定セルA1の値を抽出したいんですが・・・行き詰まりました。
わかる方いたらご助言をお願いします。
0868デフォルトの名無しさん
垢版 |
2018/11/12(月) 23:10:34.73ID:JEwLf6Zk
>>867
じゃあ次はその抽出した文字列のリストでWorksheetオブジェクトを取得してみようか
0869デフォルトの名無しさん
垢版 |
2018/11/12(月) 23:21:23.98ID:JEwLf6Zk
>>866
read_html(url)で返ってきたリストにそのままソートかけてそう
まずはどんなリストが返ってきてるかそのまま表示してみたら?
0870デフォルトの名無しさん
垢版 |
2018/11/13(火) 11:11:30.00ID:dBAvKT8b
829さんじゃありませんが、横レスで関連する質問があります。

https://stackoverflow.com/questions/38417677/why-am-i-getting-a-syntax-error-for-this-conditional-statement

You're getting the SyntaxError because you're using a conditional expression without supplying the else clause which is mandatory.

The grammar for conditional expressions (i.e if statements in an expression form) always includes an else clause:

と書かれていますが、lambda文以外の普通のif statementsの場合、elseがなくても問題がない場合が多々あると思うのですが、
なぜ>>829の例がやこのリンク先の例だとelse以下がないとだめなのでしょうか?
0872870
垢版 |
2018/11/13(火) 11:17:02.91ID:dBAvKT8b
大事なこと書き忘れました。
リンク先読むとこのスレでも指摘されているように三項演算子なのでelseが必要とのことですが、
普通のif文と三項演算子ってどう区別すれば良いのですか?
0875デフォルトの名無しさん
垢版 |
2018/11/13(火) 12:11:42.35ID:p27/Ddjo
>>873
まぁそれで区別…できなくもないけどPythonに後置if文はないし役割が違う
というより明確に区別されるのは式と文で、式の中に文を書く事は出来ない
>>825みたいなlambda中の条件式はor含めなんとか値を返すための苦肉の策
0876デフォルトの名無しさん
垢版 |
2018/11/13(火) 12:36:07.85ID:X1xMRsix
ワンライナー()のために、処理を行うかの切り替えに条件式を悪用してるだけだからすこぶる行儀悪いわな
0877874
垢版 |
2018/11/13(火) 12:49:01.67ID:dBAvKT8b
>>875-876
レスありがとうございます。メモとっときます。
0878デフォルトの名無しさん
垢版 |
2018/11/13(火) 18:24:15.89ID:90McxFB4
さすがくだすれ
0879デフォルトの名無しさん
垢版 |
2018/11/14(水) 08:37:42.04ID:7XHx6tPI
本当に初歩的な質問で申し訳ないのですが
Openpyxlで読み込んだファイル名を出力することはできますか?
シート名、セル値はわかるのですが、ファイル名のやり方がわからなくて、、
0881デフォルトの名無しさん
垢版 |
2018/11/14(水) 09:08:29.36ID:7XHx6tPI
>>880
ファイル名はもちろんわかるんですが
それをセルに出力したいのです。
0883デフォルトの名無しさん
垢版 |
2018/11/14(水) 09:22:21.28ID:1aZXQx3x
>>881
Openpyxlは触った事ないけど、
調べた感じでは基本は↓でできるんじゃないの?
sheet = openpyxl.Workbook().active
sheet['A1'] = ‘ファイル名’
0884デフォルトの名無しさん
垢版 |
2018/11/14(水) 23:27:59.57ID:2v/yZNsE
ドキュメントのsubprocessのところをみると
似たような機能で
getoutput レガシーなシェル呼び出し関数
check_output 古い高水準 API
os.systemよりsubprocessを推奨
となっていて基本runが推奨で
他は使わないほうがいいとかあるんですか?
例えばいずれなくなるからとか。
それとも単にお勧めというだけなのか?
その辺の読み解き方がよくわからないです。
0886デフォルトの名無しさん
垢版 |
2018/11/15(木) 00:06:22.84ID:biHRXo8w
まあこれは一般論で
os.systemが廃止されることはないと思うし
これまでの経験からしてDeprecatedとマークされてから2バージョンくらい移行期間があるから
仮に無くなるとしても3年くらいは大丈夫だろう

その前にプログラミングに飽きている可能性の方が高い
0888デフォルトの名無しさん
垢版 |
2018/11/15(木) 13:46:36.75ID:djL3d80k
pythonでgui アプリ作るには、tkinterってやつでいいんでしょうか
そもそも作れますか?
0890デフォルトの名無しさん
垢版 |
2018/11/15(木) 17:29:06.18ID:djL3d80k
ありがとー
3dとかも扱えますかね?
0891デフォルトの名無しさん
垢版 |
2018/11/15(木) 18:07:36.78ID:/yCJioVE
>>888
matplotlibはGUIがtkでボタンもメニューも作れる
3Dも完璧
0892デフォルトの名無しさん
垢版 |
2018/11/15(木) 18:40:25.34ID:n3jFLh1o
完璧というからには、GPU支援とかも完璧なんだろうな。
0894デフォルトの名無しさん
垢版 |
2018/11/15(木) 19:44:19.96ID:djL3d80k
-m tkinter
でtkinterのバージョンを確認できるそうですが、chdirしないとだめなんでしょうか
デフォルトの場所だとinvalid syntaxエラーになります
0896デフォルトの名無しさん
垢版 |
2018/11/16(金) 17:42:33.52ID:IxhrRMJp
↑ありがとうございました
0897デフォルトの名無しさん
垢版 |
2018/11/16(金) 17:42:49.00ID:IxhrRMJp
idleだけで開発できますか?
不十分な点ってどこでしょうか
0898デフォルトの名無しさん
垢版 |
2018/11/16(金) 17:43:28.31ID:IxhrRMJp
あと、どういった環境使ってるか教えてください
pycharmというのはおもすぎてきつかったです
とりあえずatomにpython入れてやってます
0899デフォルトの名無しさん
垢版 |
2018/11/16(金) 19:30:29.81ID:no85NK4X
起動時間はpycharmの方が掛かるけど、
起動後はatomとかvscodeの方が描画周りとかまったりしてて重いと感じる。
拡張機能もたくさん入れることになるし。
0900デフォルトの名無しさん
垢版 |
2018/11/16(金) 19:55:41.74ID:IxhrRMJp
とりあえずidleでやってきます(´・ω
0902デフォルトの名無しさん
垢版 |
2018/11/16(金) 20:15:48.44ID:IxhrRMJp
tkinterってリファレンスないんすか(´;ω
公式がないですがすでに
0904デフォルトの名無しさん
垢版 |
2018/11/17(土) 09:50:58.58ID:eS8uuMhZ
pythonとopneglでblenderみたいなソフト作れますか
植物を自動生成したいだけですが
0906デフォルトの名無しさん
垢版 |
2018/11/17(土) 10:20:48.12ID:eS8uuMhZ
それはそうなんですが、勉強として
0907デフォルトの名無しさん
垢版 |
2018/11/17(土) 11:01:18.90ID:B4GISbTr
>>906
できるけど初心者なら
pygameの方が楽
0908デフォルトの名無しさん
垢版 |
2018/11/17(土) 12:26:38.54ID:z9owpr8+
>>522 ぺちぷ
<?php
function solve(int $n):int{
$a=0;
for($i=5;$i<=$n;$i*=5)$a+=intdiv($n,$i);
return $a;
}

foreach([1,5,10,1e2,1e6,1e16] as $i)printf("%d -> %d\n",$i,solve($i));
?>

1 -> 0
5 -> 1
10 -> 2
100 -> 24
1000000 -> 249998
10000000000000000 -> 2499999999999996
0909デフォルトの名無しさん
垢版 |
2018/11/17(土) 12:27:25.80ID:z9owpr8+
誤爆すまん
0913デフォルトの名無しさん
垢版 |
2018/11/17(土) 19:28:23.67ID:eQWBxdMf
おまえは存在がリアルテロやんw
0914デフォルトの名無しさん
垢版 |
2018/11/18(日) 00:50:16.86ID:mGYzq3D+
python2.7 ubuntu utf-8

requests使ってpostするんですけど
response.text.encode('utf-8')が文字化けします。
post先のページもutf-8なので文字化けする理由がわからなくて困ってます。
他の原因が考えられるでしょうか?
0915デフォルトの名無しさん
垢版 |
2018/11/18(日) 00:52:09.78ID:RRVp+pUX
は?他でない原因はなんやwww
おまえなんも原因の推測しとらんやんけwwwww
0917デフォルトの名無しさん
垢版 |
2018/11/18(日) 02:29:02.25ID:+Y8H8lPp
オブジェクト指向言語のRubyが今大人気!!

世界最大のソフトウェア開発プラットフォームで最も人気なプログラミング言語は何なのか?
https://gigazine.net/news/20181116-top-programming-languages-2018/

さすがRuby!貫禄のランクイン!!
Railsで作られたサービスでの集計ということを差し引いてもすごい!
0918デフォルトの名無しさん
垢版 |
2018/11/18(日) 09:13:17.46ID:ZxrLCeZc
>>914
response.encoding = response.apparent_encoding

追加してみ
0920デフォルトの名無しさん
垢版 |
2018/11/19(月) 16:41:17.86ID:6QwGyqzR
PILで画像に対してimage.getdataで値を取得すると、
ImagingCore object at 0x111993790 のようなメモリ上の値が得られますが、
これに類することはjavascriptで出来ますか?
0923デフォルトの名無しさん
垢版 |
2018/11/19(月) 19:03:49.34ID:rVdz2W17
だから?
ここPythonスレだよ?
0924デフォルトの名無しさん
垢版 |
2018/11/19(月) 20:44:02.95ID:m6msMsxr
超初心者なのですが、pythonでwebの画像を取得する方法がよくわかりません、、、
ggると大量取得のスクリプトは出てくるのですが、
http://〜〜〜.jpgという1枚を保存するにはどうすればいいのでしょうか。
どなたかご教授いただければ嬉しいです。
0925デフォルトの名無しさん
垢版 |
2018/11/19(月) 21:05:05.45ID:rVdz2W17
アドレスバーに入れてエンター
右クリック
名前をつけて保存

1枚だけならこうすればいいだけだから出てこないんだと思われる
0926デフォルトの名無しさん
垢版 |
2018/11/19(月) 21:10:19.46ID:m6msMsxr
説明が不足してました、失礼
勉強がてら自分でスクリプトを作りたくて
responseとbs4で、1枚目のurlからhttp://〜〜〜.jpgを
抜き取るとこまではできたのですが、そこからのダウンロード方法がよくわからないです
1枚のダウンロード方法が分かり次第for分で回す予定なのですが
0927デフォルトの名無しさん
垢版 |
2018/11/19(月) 21:11:32.92ID:m6msMsxr
↑requestの間違いです
0931デフォルトの名無しさん
垢版 |
2018/11/19(月) 22:03:04.22ID:m6msMsxr
>>928
ありがとうございます!
wをrに読み替えて実行したところ保存できたけど
処理が終わりませんでしたが、
>>930
で終わりました、勉強になりました!
バイナリ保存をもう少し勉強してみますm(_ _"m)
0932デフォルトの名無しさん
垢版 |
2018/11/19(月) 22:20:46.67ID:OVa0imR9
>>931
930のbinとwって単なる変数だからな
openのモードのrwbとがと関係無いからな
0934デフォルトの名無しさん
垢版 |
2018/11/19(月) 22:48:30.82ID:m6msMsxr
>>932
なるほどです
0937デフォルトの名無しさん
垢版 |
2018/11/20(火) 05:15:47.87ID:0YIMqUF3
ユーザーに派生クラスを作ってもらうための、ひな形・マーカーメソッドかも。
派生クラスを作らなかった場合の、デフォルトの動作なのかも

例えば、Ruby で抽象(マーカー)メソッドを作れば、
もし派生クラスB で、メソッドa を再定義(override)しなければ、例外をraise するから、
ユーザーは派生クラスで、メソッドa を再定義しなければならない

つまり、プログラマーに注意喚起する印・マーカー

class A
def a
raise NotImplementedError, "未実装です"
end
end

class B < A
end

B.new.a # 未実装です
0938937
垢版 |
2018/11/20(火) 05:21:34.81ID:0YIMqUF3
ライブラリの作者は、様々な、decode の実装方法があるから、ひな形だけは作っておくので、
ユーザーは派生クラスで、具体的なdecode の処理を、再定義して使ってください

もし再定義しなければ、何も処理しません
0940デフォルトの名無しさん
垢版 |
2018/11/20(火) 12:30:52.12ID:xneveUXp
>>939
いやそれ間違ってるから。

python2、python3両方で使えるようにそれぞれメソッドが定義してあって、
たまたまpython2のほうは演算する必要がないから引数をそのまま返しているだけ。

そいつはマ板で有名なpython知らないruby荒らしだから無視したほうがいいよ
0943デフォルトの名無しさん
垢版 |
2018/11/20(火) 16:39:53.72ID:5NbKWroI
>>933
しぇばん、importが済んだ後あたりに

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

って書いてみて
0944デフォルトの名無しさん
垢版 |
2018/11/20(火) 19:08:18.20ID:PIfvSzhu
ディレクトリ内に
aaa_000.txt
aaa_001.txt
  :
aaa_100.txt てな感じでファイルが保存されてたとします。
aaa_000.txt以外をglob.glob()で一覧化して取り出したいんですが
glob.globの引数に指定する正規表現、どうすればいけますでしょうか???
0947デフォルトの名無しさん
垢版 |
2018/11/20(火) 19:52:04.79ID:PIfvSzhu
import glob
l = glob.glob(r"^(?!000)$")
print(l)
こうですか? なんかダメみたいです(´・ω・`)

l = glob.glob(r"aaa_(?!000)$")
l = glob.glob(r"*(?!000)$")   も試してみましたがダメでした。
レス数が950を超えています。1000を超えると書き込みができなくなります。

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