Pythonのお勉強 Part72
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
エラー文(勝手に省略orスクショうp等の横着禁止)と
おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。
★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/
※前スレ
Pythonのお勉強 Part71
https://mevius.5ch.net/test/read.cgi/tech/1695168821/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured >>565
メモリの使い方ば少し違う
でかいファイルの場合は多少気ににする必要がある
Pythonのread/readlines/write/writelinesは
改行を追加したり削除したりできないので使いにくいのは確か
こことか見ればみんな不満に思ってるのがわかる
ttps://stackoverflow.com/questions/13730107/ >>565
> writelineswithoutanyseparators
読みにくいわー。日常的に、
def supercalifragilisticexpialidocious():
とか書いてるの? 要は、リストがあってそれをファイルに保存したりファイルから取り出したりしたい
csvやjsonやpickleのtxt版
もう少し処理が込み入ってればライブラリ化するんだけど、
1行で書けるからそんな気にもならない >>568
それは一語だからそうとしか書けないでしょ >>560
最終行の改行を気にするなら、splitlines()を使うこと自体がおかしくね?
>>> '1\n2\n3'.splitlines()
['1', '2', '3']
>>> '1\n2\n3\n'.splitlines()
['1', '2', '3'] splitlines()はまさにそういうものを対象にした関数
splitといいつつ、末尾にnullができればそれは無視する
writelinesもどう見ても行は書いてなくて、行を結合したものを書いてる
このへんの関数名と処理内容の不整合が一番の問題
想定と違えば作ればいいだけだけど、欲しいものが既にあるように見える >>> "1\n2\n\n\n".splitlines()
['1', '2', '', '']
>>> "1\n2\n\n\n".splitlines(keepends=True)
['1\n', '2\n', '\n', '\n'] >>572
>'1\n2\n3'
バイナリじゃなくテキスト処理の対象なら
こういうのは改行コード入りの正しい形式に統一するほうが一般的には望ましいので
split/join使っても1つ足しとけば多くの場合は問題ない
末尾の改行コード入りで行単位のテキスト処理をするよりかは楽になることが多い Ruby でも、join の最後には改行はない。
print の後ろにも改行はないが、
puts の後ろには改行はある
p [ 1, 2 ].join("\n")
print [ 1, 2 ].join("\n")
puts [ 1, 2 ].join("\n")
puts "end"
出力
"1\n2"
1
21
2
end >>576
splitlines() は split() と挙動が違うのに split を名乗るなやゴラーと、>>560 氏は言ったのでないの。どう処理するかでなく。 逐次処理してて、見つけたらその都度printする
それを改行せずにコンマで区切りたいので、
print(f'{item}, ', end='')
みたいにすると、
1, 2, 3,
みたいに最後に余計なコンマが付く
それが見苦しいので、一旦リストに入れておいてjoinすることはある
最後の余計なセパレータはNGなのか
C言語の文末の;はセパレータだと思えば余計だけど、無い方が不自然
付けたらエラーになるpascalの方がどうかしてる
リストやらの定義で複数行に分けて書く時に最後の行にも余計なコンマをわざと付けることで、
エディタで編集が容易になる
という状況を見ると、セパレータの追加処理は最後にも付ける方が自然な気がする 自然とか、一般的とか、多くの場合とか
そんな曖昧な話じゃないでしょ csv.writerか似たようなをwriterを書けば幸せになるかもね s1 = 'a\nb\nc\n'
print(s1.splitlines())
print(s1.split('\n'))
['a', 'b', 'c']
['a', 'b', 'c', '']
この挙動の違いをどうしたものかと >>583
splitlinesは改行コードまでを一塊として処理する
\nだけに限らない
splitは指定したキーワードで分割する >>583
その2つは用途が異なるからそれぞれ別の関数が用意されてるわけで挙動が違って当然
何を問題視してるのかわからない
>>584
splitもセパレータを指定しなければ\nに限らず空白文字(whitespace character)なら分割される
(それと連続した空白文字はまとめられるので空文字は含まれなくなる) 文脈からわかるけど空文字ってどこ界隈で使われてんだろう pycharm使ってるんだが、
Windowsをクリーンインスコしたあとpycharmをインストールすると、
pythonの実行環境を再設定するのが面倒。
環境ってプロジェクトのフォルダー配下にあるはずなんだが、
その環境をpycharmが認識してくれない。 # 他人様の blogを勝手に拝借して恐縮だが、
/usr/lib64/python311.zip とは何ぞ? なんで sys.pathに zipが存在するのだろ。
https://www.tomoyan.net/python/pip#パッケージのインストールパスを調べる
> $ python -m site
>
> sys.path = [
> '/home/tomoyan',
> '/usr/lib64/python311.zip', リヌクスならメモリ上に読み込む時にlzhに変換してから名前空間にロードするので
3.11はOS標準のpythonじゃないからzipにしてるんじゃないかな PEP 273 – Import Modules from Zip Archives
https://peps.python.org/pep-0273/
展開したディレクトリがあるのと同じ感覚で読み込めるらしい c#とかやってるけど結局人工知能に興味が沸いてpythonに戻ってしまう
就職出来ればc#でもjavaでも何でもいいんだけど
この時代人工知能以外のIT技術って何を習熟していけばいいの?
もうjavaとかc#で文法以上の何をすればいいか分からん 興味あるならpythonでとことんAIやったらいい
他人のgithub落としてサンプル動かす程度は誰でもできるから勘違いすんなよ >>595
いうて発展的にやることって大規模なデータ訓練とかでしょう?
それか卒論レベルの論文書けるくらいの研究を試してみるってこと? >>594
人工知能に訊いてみりゃいいじゃん。人はなぜ生き、如何に死ぬべきでしょうと。 >>596
どう応用するかはお前の能力次第
好きにやれよ >>598
そうだな
ただ成果はネットに公開しないほうがいいよね ライセンス等に問題なければしょぼくても堂々と公開した方がいい
デメリットはない、就職時にもプラス評価
そもそも公開しても誰にも注目されないのが普通 >>601
お前もパクるんだろ?
気にすんな
実害被ってから考えたらいい
まずパクられるレベルになるのが難しい
平凡なアイデアでは間違いなく先人がいる 適材適所で言語変えてた、言語自体の研究してたくらいじゃないと
言語習得なんて就職時の評価にならん
どんな判断の上どんな応用してきたのかが知りたい部分 >>594のような有能な人は燃え尽きるタイプかなって思うので、常に謙虚でいられるように学ぶ姿勢を持つと良い。
一生学ばなればならないことを忘れてはならない。 AIが代わりに組んでくれる時代がすぐそこまで来てるからな
そのうち手で組むのは趣味だけになるよ プログラムを作るプログラムを作るとシンギュラリティ来るぞ >>605
有能じゃない
kerasとかtensorflowのバージョン上がって
2,3年前に書かれたコード拾ってもどう修正したらいいかもわからん
仮想環境で前バージョン入れてみるってことかな
流石に新しいコード書くのはスキル的に無理だし 大丈夫、始める前からパクられることを心配してるタイプの人間はすぐやめるから パクられるようなもん作れたなら大したもん
誇っていい >>594
言語仕様なんて勉強するものじゃないだろ
使いながら調べるだけ
本質はデータ構造とアルゴリズムだよ >>613
使いながら?ライブラリと勘違いしてない?
あとから新発見があった場合にリファクタしに戻るんだろうか
言語仕様はひと通りみて作法がみえないと使いたくないな
>>614
どう適用して応用するかって一生つきまとう
道具の使い方じゃなくてそういう話 >>615
今はChatGPTあるからそんなこと勉強してるより書いた方が良いぞ
ChatGPTは古い書き方を出すことはまずない たしかにたまにバグ入れてくるから鵜呑みはできないけど
書き方に関してはそうだね
次の機会に初手ChatGPTで試してみるか 文法や作法を初めから完璧に仕上げるのは無理なので書ける範囲でどんどん書いたほうがいい
>>615
仕事じゃなければ、後からリファクタリングでいいんだよ。存在しない美しいコードより存在するゴミコードの方が価値がある。
一通り見て作法がわからないと、っていうのはある程度プログラミング経験積んで、新しい言語の効力を最大限に発揮しないことには今よく知ってる言語で書いた方がいい場合でしょう TwitterAPIV2でpythonで自動投稿するツール作ってるんですが
さっきまで投稿できていたコードで
Your account is not permitted to access this feature.
とターミナルに表示されるようになりました。
アク禁だと思うですが、Developer Portal見た感じ
そういうメッセージは出ていません。
時間経てばまた使えるようになるでしょうか
わかる人いれば回答ほしいです。
それか適切な質問スレ教えて欲しいです。 少なくともPythonの話じゃねーな
同じやり方ならどんな言語でもそうなるだろって
なんか特別なライブラリ使ってんなら別だけど >>622
すみません、TwitterAPIに関するスレ探したんですがみつけられなくて twitterはめんどくさいのでcookie読ませてselenium とっくの昔に滅んでるがな
x86はソースコードみたいなもので、全然別の命令セットに翻訳して動いとるよ x86もうダメぽと Intelが IA-64を出したけど、AMD64 (x86)に敗けちゃった。 結局バイナリ互換という強みに
誰も勝てないんだよな
不連続な変化は許容されない SurfaceやMacのx64エミュレーションはそこそこ動くし
ユーザじゃなく設備とか特許とか提供側の都合じゃないかな 疑似的ボイス・トォ・スカル
組織はある程度大きくなるけれど構築方法
@Bluetooth v5.4
マルチ説ぞ可能なので同時に100に接続可能
飛距離は最大400メートル
Aピンマイク.完全ワイヤレスイヤフォン【マイク付き】
★これで司令塔を中心としたエリアが構築官僚
Bピンマイクのみの者は超指向性スピーカーにて指示を受けている
少し上のシステム
C家の防犯カメラを道路が映るように設置
Dすまふぉのai機能拡張により仲間の未認識させる
E口パクによる読み取りやジェスチャーやアイコンタクトによりさらに指示できる内容を増やしている
@司令塔となる者にスマフォと全てのBluetoothをペアーリング
AaIアシストにより各仲間に隠語で話すウ
B警察にばれてモスク罪にAIによるアシストで行動パターンの変化をさせる
空き巣後の闘争中に路地に引き込んでの警察車両の足止め
仲間は通貨そのあとに車の故障で立ち往生これを繰り返す
万引きもチームプレイをすれば店員.万引きジーメンなどもかいくぐれる
ネットを返していない特設通信なのでサイバー警察からも逃げれる >>594
> この時代人工知能以外のIT技術って何を習熟していけばいいの?
> もうjavaとかc#で文法以上の何をすればいいか分からん
就職先によってやることが違ってきますからね。
なんとも言えないんですが、
でも、俺が学生時代の自分に伝えるとしたら、
1.計算機の基礎(アセンブラ)を勉強してモニタ(OS)とコンパイラを作れ。
2.統計学の基礎理論を徹底的に勉強しろ。(数学もね!)
3.論文を書いて投稿しろ。教授か先輩に論文の書き方を教えてもらえ。(できれば英語で)
ですかね。
あなたの状況や能力が不明なのでなんとも言えませんが。。。 >>634
全く参考にならんな、そんな僅かなシェアの仕事を例にあげられても 計算機科学を応用せずに、計算機科学そのものを仕事の対象にして食っていけんものか >>636
フランスに渡米してMITやStanfordの教授にでもなれば pandas使いたかったから公式読んだが英語で全然わかんねーわ
翻訳も効果薄いし
仕方ないから日本語検索やcopilotでやりたいことだけ調べたんだが、みんな英語のマニュアル余裕で読めるの? /\
/ ヽ\
/ ヽ \ / \
/ ヽ \__ / ヽ \
/ ‐_ ヽ ―――__/ ヽ \
/  ̄ / __ ヽ \
|  ̄ \
| |
| || |
| ゝ_ |||/ |
| ( ・ ブ ゝ__ ┃ ┃ |
|  ̄ ( ・ ̄ ̄ ブ ┛ ┗ |
| ゝ__ ノ ━┓ ┏ | ┃ ┃
| __  ̄ ┃ | ┃ ┃
| | ̄ ̄ーヽ | ┃ ┃
| | ヽ |
| | |ヽ | ━┓
\ _⊥_ | | ┃┛
\  ̄ ̄ヽ_⊥ |
\ | ┏━┓
\ / ┏┛
\ / ・
| |
| \
/ \
/ \ コンピュータ英語ってありきたりな表現しかないし翻訳の精度も悪くない
そのドメインの基礎知識が足りないだけじゃ >>642
日本人でも読み書きは普通に出来るし得意な奴は多いぞ
日本人が苦手なのは聴くと話すな訳で… >>642
大卒なら普通に読めるだろ
読めないってのは大学受験してないか
推薦でしたといってるようなもんだぞ
恥ずかしいから言わないほうが良いぞ 翻訳で「パンダ」って出てきても動物の方じゃないことは分かるしな >>647
Twitterとかでも英語わかんないとか言ってる奴いてお察し
その発言自体がやばいと認識できてない
それなりの大学に行ってるやつは英語ができるのが当たり前という意識がない 文系なら言わずもがな
理系でもセンターで英語はやる
英語を捨てて受かる大学などない テストでちゃんと実力は判るので問題なし
英会話はできないけど、それは論文読むのに不要
やりたい人は個人的に駅前留学で 駅前のハワイでおしぼりポンと抜いて
シコシコピュしてもらって英語もばっちり
なわけない 実際、read/writeとlisten/speakだと役に立つ度合いは圧倒的にR側だと思う
toeicだとLも同じ比重でテストされるので、ちょっと特訓するとスコアどんどん上がる
Rのスコアはもう上がらない お前らスレ違いの話を、下手くそな日本語でずっとしているな 普通に喋れて外資系の会社で海外メンバーとコミュニケーション取りながら働けたら給料余裕で一千万円越えるから
エンジニアとして並レベルでもな Pythonの検定てとっておいた方が良いです?
受かれば会社から補助は出るので金銭負担は実質ないけど pythonそのものは1日もあれば理解できるけど、
各モジュールの使いこなしは1年経っても途上
どのモジュールが必要かも判らない状態で一律に検定できる訳がない 会社はそれで営業力上がるんだから取ってあげればいい brew経由でアップデートしたら、急に仮想環境じゃないとパッケージをインストールできないとか >>663
brewで直接導入できるpythonは他パッケージも使うものだから
システム部分をカスタマイズする使い方は避けたほうがいい
やるならpyenv等で独自に導入する >>665
3.11までは問題なかったんだけど PEP 668 とかいうので急に。
anacondaもプラン登録とかめんどくさそうなので、pyenvが良いですかね。色々乱立しすぎて辛い。 pythonの環境構築は色々ありすぎるな(´・ω・`)