くだすれPython(超初心者用) その36

■ このスレッドは過去ログ倉庫に格納されています
2018/01/01(月) 20:18:42.82ID:iOcRvNll
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その35
http://mevius.5ch.net/test/read.cgi/tech/1496411341/
VIPQ2_EXTDAT: checked:default:1000:512:----: EXT was configured
2018/02/15(木) 12:44:29.59ID:4lKXUWzM
sudo は、Ubuntu などの、Linux。
Windows, Mac, Linux など、OS の種類もわからない人には、プログラム開発は無理

Windows10 なら、WSL で、MS Store から、Ubuntu 16.04 を導入すると、
最初から、Python 3.5 が入っている

君のような素人なら、Windows7 なら、Anaconda にこもって、
それ以外のパッケージマネージャーを使わないようにする

VirtualBox, Vagrant で、Linux を使うとか、全くわからないだろ?
ls, cd, bash とか、Linux のコマンドを知ってるか?
2018/02/15(木) 12:46:36.21ID:1CgTZOOO
インデックスじゃない一時変数の名前に i 使うのやめてくれや
381遊園地
垢版 |
2018/02/15(木) 12:47:23.16ID:DdWb+fDC
連結したのが欲しいなら、適当な配列tesにでも突っ込めば良い。
382遊園地
垢版 |
2018/02/15(木) 12:51:22.57ID:DdWb+fDC
お前、将来ハゲるな。
2018/02/15(木) 12:53:07.56ID:4f6yQH0S
何発言してんだハゲ
384デフォルトの名無しさん
垢版 |
2018/02/15(木) 12:53:37.41ID:g5ZKDDcS
もの言うハゲ
2018/02/15(木) 12:55:09.77ID:4lKXUWzM
>>377-378
require 'date'

d = Date.parse('1993-02-24')
d.year #=> 1993

Ruby なら、Date 型に変換できる。
Python にも、同様のクラスがあるだろ
2018/02/15(木) 12:59:54.51ID:ewI90HZW
文字列スライスできるの知らんかった…
ありがとう
387遊園地
垢版 |
2018/02/15(木) 13:07:18.42ID:DdWb+fDC
一般人の昼休みはオワリだな。
おつーーーwww
388370
垢版 |
2018/02/15(木) 14:10:07.04ID:4IR3nEq8
githubから、
ZIPでダウンロードしてきて、
pythonで作った、pyプログラムとかがあるところに、
ファイルおいたら、ライブラリ使えるようになりました、
ありがとうございました、
少し成長しました!
2018/02/15(木) 14:18:24.86ID:eTKG3ZZ8
>>377
import datetime

years = ['2015-04-11', '2016-12-22']
dates = [datetime.datetime.strptime(year, '%Y-%m-%d') for year in years]
lowwer_digits_of_years = [date.strftime('%y') for date in dates]
390遊園地
垢版 |
2018/02/15(木) 14:57:38.79ID:DdWb+fDC
>>389
まあ、真面目に書くならコレやな。
2018/02/15(木) 17:10:40.95ID:Kx5dxyEW
またRubyの奴湧いてるwwwwwwwww
2018/02/15(木) 17:15:52.08ID:NCxYQEU4
powershellスレにも同じ奴湧いてたよ
2018/02/15(木) 19:35:03.03ID:1CgTZOOO
Railsスレのものです。
RailsのDSLがご迷惑をおかけしましたm(_ _)m
394デフォルトの名無しさん
垢版 |
2018/02/16(金) 01:14:52.16ID:Yz3zJ/9Z
プログラム全体を、
指定回数繰り返すにはどうしたらいいですか?
395デフォルトの名無しさん
垢版 |
2018/02/16(金) 06:37:00.42ID:2VV1tK2j
>>362
重いならJuliaに乗り換えよう。
2018/02/16(金) 08:30:48.92ID:PU4qYOCy
引っ込んでて
2018/02/16(金) 08:31:51.38ID:PU4qYOCy
(前後の議論も読めないようなメクラが使う言語がJulia)
2018/02/16(金) 08:40:13.54ID:3ZOt62K3
>>394
シェルスクリプトでループ
399デフォルトの名無しさん
垢版 |
2018/02/16(金) 09:45:57.06ID:Yz3zJ/9Z
>398
シェルスクリプトっていうのがあるのか、
ありがとお。
2018/02/16(金) 11:09:04.12ID:pfXE240M
>>397
おい。「メクラが」はやめろ「メクラも」なら良い
2018/02/16(金) 15:20:23.50ID:dBpGhFbZ
>>395
juliaってpythonで書いたコードでも速くなる?
2018/02/16(金) 18:15:36.40ID:25jf/8BW
リファレンス本が欲しいのですが3系にちゃんと対応している本ってありますか?
403デフォルトの名無しさん
垢版 |
2018/02/16(金) 18:49:00.87ID:GMHRcYNg
いっぱいある
2018/02/16(金) 19:24:27.65ID:WNml02Hz
というかこれ読めば良いのでは
https://docs.python.jp/3/index.html
2018/02/16(金) 19:30:31.00ID:OT98fh5E
Pythonはオブジェクトの種類が多すぎて困る
イテラブルとイテレータの違いを説明できる人いる?
ていうかイテラブルって繰り返し可能っていう意味の形容詞だと思ってたわ
2018/02/16(金) 19:42:42.63ID:ERz9QjBU
>>405
ある程度Pythonでプログラム作成できる初級者レベルの奴なら当然できないと駄目だろうが、
でも、ここは超初心者が大多数だから出来る奴は少ないんじゃないのかな

遊園地なら余裕でイテラブルとイテレータの違いを説明できるから期待して待て
2018/02/16(金) 19:56:24.32ID:WNml02Hz
iter()で返ってくるオブジェクトがiteratorで
iter()によってiteratorを返すようなオブジェクトつまり__iter__()か__getitem__()を実装するようなオブジェクトがiterable objectってことじゃないの
つまり[1, 2, 3]はiterable objectで
iter([1, 2, 3])がiteratorだろう
2018/02/16(金) 20:27:54.04ID:MSGqnnUk
俺らのような超初心者は
__iter__(),__getitem__(), __next__()のようなのを使うようなことしないだろう
409デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:28:23.55ID:T+iGynCY
つまりどーゆーことだってばよ?
410デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:35:11.53ID:Yz3zJ/9Z
シェルスクリプトなのか分からないけど、
import os
for a in range(100) : os.system('python test.py')
これで、必要な回数プログラム実行できるようになった。

このループを途中で終了したいときは、
どうやればいいんだろ?
PyCharmてやつで、プログラム実行してるけど、
これを、いきなり閉じちゃうやりかたでもいい?
2018/02/16(金) 20:37:12.80ID:MSGqnnUk
>>409
このスレでは上級者の>>407にしたって、ことじゃないの、だろう
レベルでしかレスできない。
つまりこのスレではよく分からん、さっぱりわかりませんレベルと言うこと
(自信をもってちゃんと用語の説明が出来るレベルにはないと)
412デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:39:23.63ID:bV6azCnv
知らずに使ってる
2018/02/16(金) 20:48:05.65ID:MSGqnnUk
>>412
超超初級レベルの俺だって
for X in YYYY
なんかで、イテラブル・イテレータとかが関係している(?)のを使っているからな
2018/02/16(金) 21:20:06.11ID:WNml02Hz
>>409
for i in iterable:
みたいな文は実際にははじめにiter(iterable)が呼ばれて
返ってきたiterator(itとする)に対して
StopIteration例外がraiseされるまでnext(it)を呼び出しその結果をそれぞれiに束縛するという動作をする
なので普段意識しないでもiteratorは使っている

そう考えるとiterable objectとiteratorが一緒でもいいような感じがするし
実際generatorはiterableでありその上iterableでもある
ただiterableとiteratorを分離してクラスの肥大化を防ぐためにそういう仕様になってるんじゃないか
2018/02/16(金) 21:38:25.20ID:WNml02Hz
あとiteratorとiterableを分けることで複数回の反復が可能になるってのがあるな
rangeはiterable objectだけどiteratorではないから
r = range(100)
for i in r:
____print(i)
for i in r:
____print(i)
はできるが
generatorはiterable objectであり自分自身がiteratorだから
g = (i for i in range(100))
for i in g:
____print(i)
for i in g:
____print(i)
は無理
416デフォルトの名無しさん
垢版 |
2018/02/16(金) 21:41:13.26ID:T+iGynCY
マジレスするとforの仕様ぐらい俺でも知ってるってばよ
そーゆー事じゃねーだろ
2018/02/16(金) 21:54:29.76ID:PU4qYOCy
そもそも違いを説明できるかって質問が意味不明
どちらもPythonのオブジェクトであること以外、何も同じじゃないだろ
2018/02/16(金) 22:00:15.05ID:WNml02Hz
>>416
どういうこと?
iterableとiteratorの違いの話では
>>407でiterableとiteratorの違いは書いた
>>414-415でiteratorのそもそもの意味、iteratorとiterableが別になっている意味について言及したんだけど
419デフォルトの名無しさん
垢版 |
2018/02/16(金) 22:59:19.75ID:Yz3zJ/9Z
PyCharmのツールバーに、
停止ボタン発見した!
プログラム途中で辞める時は、このボタン押せばいいのか。
2018/02/16(金) 23:05:41.53ID:5HHWlQwe
どの言語でもforループでbreakやcontinue使えない中級者がいるよね
みんながんばれー
2018/02/16(金) 23:07:47.04ID:aWM8HJJf
文脈を理解しないでレスするアホ
2018/02/16(金) 23:25:21.33ID:S3mlGk95
>イテラブルとイテレータの違いを説明
イテラブルとイテレータについてきいているのであって
Pythonでイテラブルやイテレータをどう実現するのか聞いているんじゃないんじゃないのか
俺自身、イテラブルやイテレータはほとんどわからん。
2018/02/16(金) 23:41:08.50ID:zuV+/SF8
ぶっちゃけ「オブジェクトの種類が多すぎ」という点からして要領を得ない
iterableもiteratorもPythonドキュメントの用語集に明記されているし
データモデルの特殊メソッド名なんか単なるインターフェイスに過ぎないだろう
2018/02/17(土) 00:05:27.82ID:srN4h2h/
どの言語でも初心者スレでいきなりiterator持ち出してドヤる上級者がいるよね
みんな巣に帰れー
425デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:17:49.35ID:PRSXaLoF
いやみんなお前程いろいろな初心者スレに精通してる訳じゃないから同意を求められてもw
2018/02/17(土) 00:30:22.56ID:DOQJ47ER
覚えたてで誰かに話したくてしょうがないんだろ w
427デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:36:00.95ID:PRSXaLoF
>>426
突然何言ってんのアスペ君?
2018/02/17(土) 00:36:28.72ID:BUliR1Ff
それほんと(超)初心者にはあるよな。俺も知っているぞとどや顔で話したくなるときがある。
でも、(超)初心者のそれは(超)しったかがほとんどだかからな
429デフォルトの名無しさん
垢版 |
2018/02/17(土) 02:22:49.48ID:ub0BBZWD
枯れ木も山の賑わい
2018/02/17(土) 07:34:58.35ID:DOQJ47ER
>>427
指摘されて顔真っ赤
ってか w
431デフォルトの名無しさん
垢版 |
2018/02/17(土) 10:06:51.83ID:PRSXaLoF
なんか変なアスペが勘違いしてうやむやにしてしまったけど
結局だれか説明できるやつおらんの?>>405
2018/02/17(土) 10:16:42.08ID:LYzy673n
いろんな意味で終わってる
2018/02/17(土) 10:38:15.87ID:sR63t0t4
>>431
顔真っ赤にする前にちょっとはググれよ w
まずはこの辺りから見とけ
https://docs.python.jp/3/glossary.html
434デフォルトの名無しさん
垢版 |
2018/02/17(土) 10:46:56.40ID:S2HxDd2V
pythonでとってきたデータを、
Excelのセルに貼り付けるにはどうしたらいいですか?
2018/02/17(土) 10:52:15.82ID:YrEj1JRO
改行区切り
カンマ区切り
なら貼り付けられるだろ
436デフォルトの名無しさん
垢版 |
2018/02/17(土) 11:05:36.13ID:LYzy673n
>>434
pandas.to_excel()
2018/02/17(土) 11:21:49.23ID:/cKWkF1j
ちっとはggr
http://phaosdove.blogspot.jp/2016/02/pythoncsvexcel_59.html
438デフォルトの名無しさん
垢版 |
2018/02/17(土) 13:50:37.67ID:PRSXaLoF
なんとか話題についていこうと必死にググってリンクを貼ってるアスペおるなw
可愛いよアスペwwww
439遊園地
垢版 |
2018/02/17(土) 14:23:04.96ID:j5MwtzW8
>>437
俺もコレ使ってる。
xlrd,xlwt直書きより楽だな
2018/02/17(土) 14:33:39.11ID:1VpmWKM+
>>431
俺も本を読んで昨日知ったんだよ(Python歴3年)
語感から、イテラブルは形容詞で、イテラブルなオブジェクト=イテレータだと普通思うだろ?
どっちもオブジェクトなんだそうだ
・値を順に取り出すことのできるオブジェクト=イテラブル
・組込関数next()に読ませるたびに値が順に一個ずつ出てくるオブジェクト=イテレータ

リストやタプルやrangeはイテラブルで、ジェネレータやファイルオブジェクトや
組込関数iter()に読ませたイテラブルはイテレータということらしい

イテラブル・イテレータはドキュメントに何気なく出てくるので、超初心者でも
覚えておかないとまずいと思った次第
2018/02/17(土) 14:37:10.09ID:2QbLbnEt
・イテレータに出来るオブジェクト=イテラブル

形容詞で何の問題もない
442デフォルトの名無しさん
垢版 |
2018/02/17(土) 14:54:22.69ID:Az1N2hD7
https://docs.python.jp/3/library/stdtypes.html#list
>コンストラクタは、 iterable の項目と同じ項目で同じ順のリストを構築します。 iterable は、シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトです。
イテラブルは性質、イテレータはオブジェクトタイプ
シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトは全部イテラブルだけど、それ以外の性質は違う
シーケンスはインデックスで要素を参照できるけど、イテレータオブジェクトはできない等々
443デフォルトの名無しさん
垢版 |
2018/02/17(土) 14:54:56.30ID:MKCBoR91
質問です
リスト内包表記で
a=[0,1,2,3,4,5,6]
lst=[e for e in a if 2<e<5]とやって
lstの中身が[3,4]にするのはできるのですが
逆のパターン(1,2,5,6を残したい)をやるときはどうすればいいのでしょうか?
lst=[e for e in a if 2>e>5]にすると結果が[]になってしまいます。
lst=[e for e in a if 2>=e]
lst.extend(e for e in a if 5<=e)
とつなげるしかないのですか?
2018/02/17(土) 15:06:05.14ID:2QbLbnEt
>>442
>>> a = range(100)
>>> b = iter(a)
>>> b.next()
0
>>> b.next()
1
>>> c = iter(b)
>>> c.next()
2
>>> c.next()
3
2018/02/17(土) 15:08:06.23ID:2QbLbnEt
>>443
lst=[e for e in a if not 2<e<5]
2018/02/17(土) 15:08:14.57ID:9JmhqCvr
>>440
iterable object=反復可能なオブジェクトでしょう普通に
iterator=反復子、主に現在位置を保持して制御する

こんなものPythonに限った話じゃないし、これをしてオブジェクトの種類が多すぎというなら
関数が多すぎというくらい可笑しな表現、概念を学ばず振る舞いだけを覚えるようでは理解が深まらんぞ

>>443
2より小さくて5より大きい数値は存在しないでしょう、if not 2 < e < 5なりなんなり内包表記以前に条件式の問題
447443
垢版 |
2018/02/17(土) 15:20:11.70ID:MKCBoR91
not 使えたんですね・・・ありがとうございます!
if not 2 < e < 5
2018/02/17(土) 15:32:42.89ID:IU1gsQgu
Ruby では、Enumerable module を include して、each を定義すれば、
Enumerable内の数十のメソッドが使えるようになる

また、Enumerable を継承した、より便利な、
Enumerator クラス(外部 iterator)を返すようにすると、
そのクラスに処理を丸投げ(委譲)できる
2018/02/17(土) 15:37:48.86ID:cicN/htR
format(引数名)ってやりたいんだけど、方法がよくわからない
これってもしかしてプロのグラマーが怒る、やったらアカン系のやつですか?
2018/02/17(土) 15:43:03.02ID:DOQJ47ER
>>438
かわいそうな奴...
2018/02/17(土) 15:45:28.50ID:2QbLbnEt
>>449
何をやろうとして
何をどうやって
何が出来なかったか
を書かないとプログラマは怒る
452デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:55:30.42ID:PRSXaLoF
怒らんわそんなことでw
453デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:57:55.95ID:S2HxDd2V
>>435
>>436
>>437
ありがとおございます、
なんかimportでエラーが出てうまくいかないけど、
importのやり方自体分かってないのかも、
もう少し勉強してみます。
454デフォルトの名無しさん
垢版 |
2018/02/17(土) 16:06:44.50ID:MCbrsfg3
>>444
何が言いたい
2018/02/17(土) 16:57:56.18ID:gSWBAnwA
>>454
言葉を使うことができない言語障碍者にそういうことを言ってはダメ
恐らく言葉にすると俺超すごいだろと言っているんだろう
2018/02/17(土) 17:12:10.02ID:gSWBAnwA
>>433
ググることができないレベル(超低脳)の奴がPython野郎には多いから
ここ超初心者用がある。俺のような超低脳がたくさんPythonに押し寄せているんだろう
2018/02/17(土) 17:18:45.10ID:DOQJ47ER
>>456
いや、ググることすらできない奴はいいのよ
ID:WNml02Hz みたいな人もいるのでこういうスレが成り立ってる
最悪なのはアスペしか言えない ID:PRSXaLoF みたいな奴
マジで邪魔
458デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:32:07.13ID:MCbrsfg3
>>444
rangeオブジェクトはシーケンスだし、iterした時点で返ってくるのはrangeじゃないからな
459デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:55:03.93ID:PRSXaLoF
>>457
アスペ君ついに本音が漏れるwwww

超初心者ばかりだと簡単にマウントとれて楽しいよねアスペ君w
残念ながらまだまだ邪魔しますよーwwww
2018/02/17(土) 17:58:03.52ID:8gAgPY8p
基地害かよww
2018/02/17(土) 20:16:47.07ID:gSWBAnwA
Pythonスレは他の言語スレとは違いは基地外、超低脳ですら大歓迎だからな
そのような人達を見捨てないで温かく受け入れてくれる素晴らしい言語がPython
462デフォルトの名無しさん
垢版 |
2018/02/17(土) 21:22:57.86ID:PRSXaLoF
俺はキチガイは徹底的に叩くけどなwww
463遊園地
垢版 |
2018/02/17(土) 21:32:16.31ID:j5MwtzW8
煽られると発狂と激怒はする。(2ch時代からの伝統だから、しゃーない。)

真っ先に俺を叩かない所、過去スレを見てないなw。
464デフォルトの名無しさん
垢版 |
2018/02/17(土) 22:19:33.19ID:ZVMrHX2D
>>461
rubyと正反対だな
あっちは冷たすぎる
465デフォルトの名無しさん
垢版 |
2018/02/17(土) 22:31:39.18ID:R/MzkKh+
【ミイラ遺体】  お握り食べたい  ≪世界教師 マイトLーヤ≫  感じが悪かった  【ナマポ担当】
http://rosie.5ch.net/test/read.cgi/liveplus/1518872263/l50
2018/02/17(土) 22:44:17.96ID:WDgaqWjX
まだやってんのか
467デフォルトの名無しさん
垢版 |
2018/02/18(日) 00:16:00.77ID:trAPtbQv
>>463
お前は超低能の部類だから優しくするよw
468遊園地
垢版 |
2018/02/18(日) 00:44:16.64ID:OWkH/HB4
ほむ
https://ideone.com/tyLpsD
469遊園地
垢版 |
2018/02/18(日) 00:47:19.76ID:OWkH/HB4
エラーでるけど、動く。
修正がだるい。
寝よう。
2018/02/18(日) 10:39:22.73ID:Yw5HAQAg
三項演算子ってどうして
return A if式else retuen B
にならないんですか?
2018/02/18(日) 11:00:38.50ID:6C73cEwr
return 値(式)

値(式) if 値(式) else 値(式)
のコンボだから
2018/02/18(日) 11:54:07.20ID:Yw5HAQAg
あーじゃあ
print(A) if式else return B
みたいなことはできないんですね
2018/02/18(日) 12:14:21.63ID:k1v/mjkP
>>472
出来ないというかそもそもif文とは別物、三項演算子は値を返す式
式中に文は書けないし、片方だけreturnするなら普通にif文を使う
2018/02/18(日) 12:18:23.55ID:zFnzTh9G
rubyから来たのかな?
2018/02/18(日) 12:52:03.00ID:Yw5HAQAg
>>473
勘違いしてました
どうもありがとう
2018/02/18(日) 13:44:36.51ID:RKNpLHWC
loggingでlogを残したいんだけど正常に動いてるというメッセージはどのレベルに設定したらいいの?INFO? DEBUG?
2018/02/18(日) 13:47:28.76ID:YGh6gLdw
INFO
2018/02/18(日) 13:54:32.50ID:RKNpLHWC
>>477
即レスサンクス
2018/02/19(月) 12:23:50.01ID:rLF2QBDt
@classmethodってオブジェクトのコンストラクターみたいな使い方がほとんどなの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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