くだすれPython(超初心者用) その36
■ このスレッドは過去ログ倉庫に格納されています
このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は 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 years=["2015-04-11","2016-12-22"] for i in years: □print(i[2:4].split('-')) データ型がソレなら正規表現はいらないんじゃねえ? 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 のコマンドを知ってるか? インデックスじゃない一時変数の名前に i 使うのやめてくれや 連結したのが欲しいなら、適当な配列tesにでも突っ込めば良い。 >>377-378 require 'date' d = Date.parse('1993-02-24') d.year #=> 1993 Ruby なら、Date 型に変換できる。 Python にも、同様のクラスがあるだろ githubから、 ZIPでダウンロードしてきて、 pythonで作った、pyプログラムとかがあるところに、 ファイルおいたら、ライブラリ使えるようになりました、 ありがとうございました、 少し成長しました! >>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] Railsスレのものです。 RailsのDSLがご迷惑をおかけしましたm(_ _)m プログラム全体を、 指定回数繰り返すにはどうしたらいいですか? (前後の議論も読めないようなメクラが使う言語がJulia) >398 シェルスクリプトっていうのがあるのか、 ありがとお。 >>397 おい。「メクラが」はやめろ「メクラも」なら良い >>395 juliaってpythonで書いたコードでも速くなる? リファレンス本が欲しいのですが3系にちゃんと対応している本ってありますか? Pythonはオブジェクトの種類が多すぎて困る イテラブルとイテレータの違いを説明できる人いる? ていうかイテラブルって繰り返し可能っていう意味の形容詞だと思ってたわ >>405 ある程度Pythonでプログラム作成できる初級者レベルの奴なら当然できないと駄目だろうが、 でも、ここは超初心者が大多数だから出来る奴は少ないんじゃないのかな 遊園地なら余裕でイテラブルとイテレータの違いを説明できるから期待して待て iter()で返ってくるオブジェクトがiteratorで iter()によってiteratorを返すようなオブジェクトつまり__iter__()か__getitem__()を実装するようなオブジェクトがiterable objectってことじゃないの つまり[1, 2, 3]はiterable objectで iter([1, 2, 3])がiteratorだろう 俺らのような超初心者は __iter__(),__getitem__(), __next__()のようなのを使うようなことしないだろう シェルスクリプトなのか分からないけど、 import os for a in range(100) : os.system('python test.py') これで、必要な回数プログラム実行できるようになった。 このループを途中で終了したいときは、 どうやればいいんだろ? PyCharmてやつで、プログラム実行してるけど、 これを、いきなり閉じちゃうやりかたでもいい? >>409 このスレでは上級者の>>407 にしたって、ことじゃないの、だろう レベルでしかレスできない。 つまりこのスレではよく分からん、さっぱりわかりませんレベルと言うこと (自信をもってちゃんと用語の説明が出来るレベルにはないと) >>412 超超初級レベルの俺だって for X in YYYY なんかで、イテラブル・イテレータとかが関係している(?)のを使っているからな >>409 for i in iterable: みたいな文は実際にははじめにiter(iterable)が呼ばれて 返ってきたiterator(itとする)に対して StopIteration例外がraiseされるまでnext(it)を呼び出しその結果をそれぞれiに束縛するという動作をする なので普段意識しないでもiteratorは使っている そう考えるとiterable objectとiteratorが一緒でもいいような感じがするし 実際generatorはiterableでありその上iterableでもある ただiterableとiteratorを分離してクラスの肥大化を防ぐためにそういう仕様になってるんじゃないか あと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) は無理 マジレスするとforの仕様ぐらい俺でも知ってるってばよ そーゆー事じゃねーだろ そもそも違いを説明できるかって質問が意味不明 どちらもPythonのオブジェクトであること以外、何も同じじゃないだろ >>416 どういうこと? iterableとiteratorの違いの話では >>407 でiterableとiteratorの違いは書いた >>414-415 でiteratorのそもそもの意味、iteratorとiterableが別になっている意味について言及したんだけど PyCharmのツールバーに、 停止ボタン発見した! プログラム途中で辞める時は、このボタン押せばいいのか。 どの言語でもforループでbreakやcontinue使えない中級者がいるよね みんながんばれー >イテラブルとイテレータの違いを説明 イテラブルとイテレータについてきいているのであって Pythonでイテラブルやイテレータをどう実現するのか聞いているんじゃないんじゃないのか 俺自身、イテラブルやイテレータはほとんどわからん。 ぶっちゃけ「オブジェクトの種類が多すぎ」という点からして要領を得ない iterableもiteratorもPythonドキュメントの用語集に明記されているし データモデルの特殊メソッド名なんか単なるインターフェイスに過ぎないだろう どの言語でも初心者スレでいきなりiterator持ち出してドヤる上級者がいるよね みんな巣に帰れー いやみんなお前程いろいろな初心者スレに精通してる訳じゃないから同意を求められてもw それほんと(超)初心者にはあるよな。俺も知っているぞとどや顔で話したくなるときがある。 でも、(超)初心者のそれは(超)しったかがほとんどだかからな なんか変なアスペが勘違いしてうやむやにしてしまったけど 結局だれか説明できるやつおらんの?>>405 pythonでとってきたデータを、 Excelのセルに貼り付けるにはどうしたらいいですか? なんとか話題についていこうと必死にググってリンクを貼ってるアスペおるなw 可愛いよアスペwwww >>437 俺もコレ使ってる。 xlrd,xlwt直書きより楽だな >>431 俺も本を読んで昨日知ったんだよ(Python歴3年) 語感から、イテラブルは形容詞で、イテラブルなオブジェクト=イテレータだと普通思うだろ? どっちもオブジェクトなんだそうだ ・値を順に取り出すことのできるオブジェクト=イテラブル ・組込関数next()に読ませるたびに値が順に一個ずつ出てくるオブジェクト=イテレータ リストやタプルやrangeはイテラブルで、ジェネレータやファイルオブジェクトや 組込関数iter()に読ませたイテラブルはイテレータということらしい イテラブル・イテレータはドキュメントに何気なく出てくるので、超初心者でも 覚えておかないとまずいと思った次第 ・イテレータに出来るオブジェクト=イテラブル 形容詞で何の問題もない https://docs.python.jp/3/library/stdtypes.html#list >コンストラクタは、 iterable の項目と同じ項目で同じ順のリストを構築します。 iterable は、シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトです。 イテラブルは性質、イテレータはオブジェクトタイプ シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトは全部イテラブルだけど、それ以外の性質は違う シーケンスはインデックスで要素を参照できるけど、イテレータオブジェクトはできない等々 質問です リスト内包表記で 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) とつなげるしかないのですか? >>442 >>> a = range(100) >>> b = iter(a) >>> b.next() 0 >>> b.next() 1 >>> c = iter(b) >>> c.next() 2 >>> c.next() 3 >>443 lst=[e for e in a if not 2<e<5] >>440 iterable object=反復可能なオブジェクトでしょう普通に iterator=反復子、主に現在位置を保持して制御する こんなものPythonに限った話じゃないし、これをしてオブジェクトの種類が多すぎというなら 関数が多すぎというくらい可笑しな表現、概念を学ばず振る舞いだけを覚えるようでは理解が深まらんぞ >>443 2より小さくて5より大きい数値は存在しないでしょう、if not 2 < e < 5なりなんなり内包表記以前に条件式の問題 not 使えたんですね・・・ありがとうございます! if not 2 < e < 5 Ruby では、Enumerable module を include して、each を定義すれば、 Enumerable内の数十のメソッドが使えるようになる また、Enumerable を継承した、より便利な、 Enumerator クラス(外部 iterator)を返すようにすると、 そのクラスに処理を丸投げ(委譲)できる format(引数名)ってやりたいんだけど、方法がよくわからない これってもしかしてプロのグラマーが怒る、やったらアカン系のやつですか? >>449 何をやろうとして 何をどうやって 何が出来なかったか を書かないとプログラマは怒る >>435 >>436 >>437 ありがとおございます、 なんかimportでエラーが出てうまくいかないけど、 importのやり方自体分かってないのかも、 もう少し勉強してみます。 >>454 言葉を使うことができない言語障碍者にそういうことを言ってはダメ 恐らく言葉にすると俺超すごいだろと言っているんだろう >>433 ググることができないレベル(超低脳)の奴がPython野郎には多いから ここ超初心者用がある。俺のような超低脳がたくさんPythonに押し寄せているんだろう >>456 いや、ググることすらできない奴はいいのよ ID:WNml02Hz みたいな人もいるのでこういうスレが成り立ってる 最悪なのはアスペしか言えない ID:PRSXaLoF みたいな奴 マジで邪魔 >>444 rangeオブジェクトはシーケンスだし、iterした時点で返ってくるのはrangeじゃないからな >>457 アスペ君ついに本音が漏れるwwww 超初心者ばかりだと簡単にマウントとれて楽しいよねアスペ君w 残念ながらまだまだ邪魔しますよーwwww Pythonスレは他の言語スレとは違いは基地外、超低脳ですら大歓迎だからな そのような人達を見捨てないで温かく受け入れてくれる素晴らしい言語がPython 煽られると発狂と激怒はする。(2ch時代からの伝統だから、しゃーない。) 真っ先に俺を叩かない所、過去スレを見てないなw。 >>461 rubyと正反対だな あっちは冷たすぎる >>463 お前は超低能の部類だから優しくするよw 三項演算子ってどうして return A if式else retuen B にならないんですか? return 値(式) と 値(式) if 値(式) else 値(式) のコンボだから あーじゃあ print(A) if式else return B みたいなことはできないんですね >>472 出来ないというかそもそもif文とは別物、三項演算子は値を返す式 式中に文は書けないし、片方だけreturnするなら普通にif文を使う loggingでlogを残したいんだけど正常に動いてるというメッセージはどのレベルに設定したらいいの?INFO? DEBUG? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる