X



Pythonのお勉強 Part62
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん (ワッチョイ 7301-e0wG)
垢版 |
2019/09/15(日) 16:06:00.08ID:E+Kc3PWT0
★当スレにRubyのソースコード類を書くことを禁ず★
☆Ruby等、Pythonではないプログラミング言語での回答類を書くのも禁止
☆「Ruby では」「Rubyでは」をNGワード登録推奨

◆エラーを解決したいときはエラー文(勝手に省略禁止)と
 環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと

◆Pythonのソースコードを5ちゃんにコピペするとインデントが崩壊するので
  ↓等のソースコードうp用サイトに貼ってきてくだしあ
    (スクリーンショットをimgur等にうpる「横着」禁止)
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
ttps://jupyter.org/try    (旧try.jupyter.org)ちょっとめんどうそう。

◇Pythonオフィシャルサイト
http://www.python.org/

◇まとめwiki
ttp://python.rdy.jp/

●関連スレ●
くだすれPython(超初心者用) その44【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1563969768/

〇前スレ
Pythonのお勉強 Part61
http://mevius.5ch.net/test/read.cgi/tech/1563622784/

次スレの建立は>>985あたりが挑戦する。 [EOF]
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0506デフォルトの名無しさん (ワッチョイ 7997-Rk0C)
垢版 |
2019/11/22(金) 01:46:11.40ID:9t5OvAOe0
>>500
まず、文法覚えないことにはインタプリタにちゃんと解釈されないコードを書くことができないので必須

>>505
ネット上にいっぱい転がってるチュートリアルを何個かこなす。わかってきたと思ったら
身の回りにある簡単だけどアルゴリズムで生成できそうなもの(カレンダーとか)を作ってみるとか、
システムで処理できそうなもの(家計簿とか)を超簡単で良いから作ってみる
そもそも、アプリといっても色々種類があるけどどういうアプリを作りたいの?
0507デフォルトの名無しさん (ワッチョイ d901-QS5Z)
垢版 |
2019/11/22(金) 01:46:29.01ID:ENRc085L0
何か作れ。ツイッターやSlackとかのAPIを叩くのがお手軽でいい。
Webに向かっても良いし、ツール作っても良いし、機械学習やってみるのもいい。
本読んだだけだと、分からない事が一杯あることに気づく。
0508デフォルトの名無しさん (ワッチョイ 7997-Rk0C)
垢版 |
2019/11/22(金) 01:46:52.86ID:9t5OvAOe0
>>506
インタプリタにちゃんと解釈されない→インタプリタにちゃんと解釈される、だ
0511デフォルトの名無しさん (ワッチョイ 7997-Rk0C)
垢版 |
2019/11/22(金) 02:11:37.91ID:9t5OvAOe0
>>510
かなり簡単だと思うよ。
文法の他にも基礎的なデータ構造の応用例は知っとかなきゃだめかもな。
配列、辞書がなにを意味するか程度で十分だけど。
0512デフォルトの名無しさん (ワッチョイ 937d-+KCU)
垢版 |
2019/11/22(金) 12:03:21.80ID:1Y9uxiIK0
>>511
ありがとうございます。

基礎的なデータ構造の応用例を知る必要があるとの事ですけど、その文法の基本をひたすら勉強して、それをどう応用してアプリにするのかが私の調べ方が悪いのかネットでは探せなかったです。
0515デフォルトの名無しさん (ブーイモ MM8d-hZ32)
垢版 |
2019/11/22(金) 16:57:39.40ID:wDj1H5o1M
yokokara
0519デフォルトの名無しさん (ワッチョイ 9301-wiXz)
垢版 |
2019/11/22(金) 22:19:11.83ID:FtTqA+yz0
>>505
基本文法を覚えるより前に
まず目的を明確にしてそれを達成するために必要となるだろうパーツを
分からないなりに自分で考えて調べてリストアップすることからはじめるといい

目的から逆算して何を学ぶ必要があるのかを考えていれば
質問の中身も変わるし学習効率も上がる

それと、何事もまず自分で選択肢を考えること
次に調べたり試したりして、人に聞くのはそのあと
考えたり調べたりするのは5~10分とかの短い時間でも構わない
自分なりの考え・意見・仮説を形成しようという思考の営みが大切

(説教臭くてごめんよ)
0520デフォルトの名無しさん (ワッチョイ a95f-QS5Z)
垢版 |
2019/11/22(金) 22:28:45.31ID:ZeaSs8iG0
>>505
なんらかの目標があるのなら最初からそれをやっていけばいい
機械学習、統計、ウェブサイト、デスクトップアプリ、科学計算……
pythonにはだいたいの分野に無料でライブラリは揃ってるから
基本文法の他にそれぞれの専門のライブラリの使い方を学んでいけばいい

特に目標がなくプログラミングの知識をつけたいってことなら「アルゴリズムとデータ構造」系の本で勉強するとか
オブジェクト志向関連の知識をつけるのがいいんじゃないか?
そのうえでAtCoderとかの競技プログラミングサイトで実力試ししてみるのもいいぞ
実務プログラミングとは勝手が違うけど採用の参考にするっていう企業もあるらしいしな

他にはpyxelっていうレトロゲームエンジンが個人的に今は熱いな
pythonで簡単にシンプルなドット絵ゲームが作れて楽しいからとりあえずの目標としてはオススメ
0521516 (ワッチョイ 132c-4eZD)
垢版 |
2019/11/22(金) 22:34:09.33ID:IgRfeEG+0
例えば、CSV なら、

person_id, date, pattern
1,2019-03-10,2
2,2019-03-10,3
1,2019-03-14,3

1番の人は、2019-03-10 に、パターン2 で働く
0523デフォルトの名無しさん (ワッチョイ 199f-+KCU)
垢版 |
2019/11/23(土) 02:15:21.60ID:MHX7Oghg0
505です

皆様ご丁寧にありがとうございます!
まずは基本の文法を徹底的に覚えようと思います。

ここの皆様はプログラミングは独学で勉強されたんですか?
基本文法を覚えてから次のステップに進むのがハードル高そうだなと感じています。
0526デフォルトの名無しさん (ワッチョイ 8b10-b4Py)
垢版 |
2019/11/23(土) 10:03:38.79ID:XnjbOuok0
Don’t Think Eeel!
0528デフォルトの名無しさん (ワッチョイ 8b10-b4Py)
垢版 |
2019/11/23(土) 11:17:04.22ID:XnjbOuok0
>>527
0534デフォルトの名無しさん (ワッチョイ 99ad-BEIG)
垢版 |
2019/11/24(日) 13:59:01.33ID:tXhYyJdV0
Progateというプログラミング学習サイトでPythonを学んだのだが
いかんせん学習量が浅すぎた
if文、for文、配列、辞書、クラス、親子継承くらいまでしかやらなかった
打ち切るようにすぐ終わってしまい残念だ

初級者レベルを脱してここから先が覚えたいところなのに
どうやって中上級者や実務レベルまで引き上げるのでしょうか?
なにかプログラミング学習に適した書籍やサイトがあれば教えてください
0536デフォルトの名無しさん (ワッチョイ 1901-iHas)
垢版 |
2019/11/24(日) 14:02:37.60ID:G+scijNw0
>>531
それ「致命傷」になるんかwやばいなwww > 歯茎に影響

喉の奥の方に小骨が刺さって耳鼻咽喉科 が 一番起きうることなんじゃね?
次がビタミンAの過剰摂取か
加熱不十分による毒素あたり(生の状態だと有毒魚)
0539デフォルトの名無しさん (ワッチョイ 317f-qZD/)
垢版 |
2019/11/24(日) 17:39:02.21ID:d2XZtoqy0
>>534
実務レベルのスキルを身に着けるなら実務に就くしかない
机上の自己学習なんてお遊戯みたいなもんだ

あともし仕事にしたくて勉強しているのならやめた方がいい
この国ではプログラマは土方としてITゼネコンにボロボロになるまでこき使われ搾取される
フリーランスになっても足元見られて安く買い叩かれ雑用を押し付けられる
なーんもいいことないから
0541デフォルトの名無しさん (ワッチョイ b36e-BEIG)
垢版 |
2019/11/24(日) 19:02:24.69ID:zs+LjqkQ0
これからの時代にはプログラミング、特にこういう軽量言語でのプログラミングなんてものは日曜大工と同じくらい誰でもやることになるべきなのに
こういう職業としてやることを前提にして無駄に厳しくあたる輩が普及を妨げている
0544デフォルトの名無しさん (アウアウクー MM45-3IAb)
垢版 |
2019/11/24(日) 20:26:47.72ID:blrx86CBM
pythonって、いま流行りの機械学習とか、ネットワークおよび組み込みとか
なんだかんだでお給料のいい仕事と結びつきやすい言語だから
ドカタドカタって悲観することないと思うけど
0554デフォルトの名無しさん (ワイーワ2 FF63-KqLj)
垢版 |
2019/11/25(月) 13:48:18.27ID:pjJuONFZF
>>541
日曜大工で壁に棚造って強度足りなくて
いざ物載せたら落ちるって事故が良くあったあらしいが
プログラミングでも同じこと

自己責任で済んでるうちは良いが他人に迷惑掛けないレベルには配慮が必要
0562デフォルトの名無しさん (ワッチョイ 99ad-3IAb)
垢版 |
2019/11/26(火) 23:43:47.39ID:BW9q0U+y0
客先に行ってるんですけど、
セキュリティがちがちのノートPCしか使えません。
そのノートPCにソフトはインストールできないのですが、
ネットにはつながって、ブラウザは使えるので、
自社のPCサーバーにPythonをインストールして
ノートPCのブラウザから
Pythonのちょっとしたテストや開発を
できるようにしたいと思っています。

こういうのってできるのでしょうか?
0563デフォルトの名無しさん (ワッチョイ a95f-9ikg)
垢版 |
2019/11/26(火) 23:52:28.16ID:LXcR3XM90
セキュリティガチガチって事は何処に
アクセスしてるかも知られるし
個人のサーバとかあからさまに怪しまれると
思うのだけど、そこの言い訳は用意できるの?
技術云々よりコンプラの問題だと思うけど
0564デフォルトの名無しさん (アウアウクー MM45-3IAb)
垢版 |
2019/11/27(水) 00:05:10.79ID:M9o5zXjeM
そのノートにPython3が入ってるなら、
vimでコードを書いてコマンドラインでテストすればいいんじゃね
ソフトにこだわって自宅サーバーにアクセスして下手に怪しまれるよりはマシ

技術的にはアドオンでも余裕で出来るけど
0566デフォルトの名無しさん (ワッチョイ e9ad-QS5Z)
垢版 |
2019/11/27(水) 01:42:24.72ID:qDKo2wLX0
>>562
簡単なテスト位ならすぐに出来るよ
webサーバーたてる
オレオレでいいからsslにする
textareaのスクリプトをpostして実行結果を返すページを作成する
ページにはパスワードを掛けるがワンタイム的なものにする
セキュリティーやらコンプライアンスやらは知らん
本格的な開発となったら相当ハードルが高いと思う

簡単なテスト位ならプログラム実行できるウェブサービス使ったらいいんじゃないの
https://wandbox.org/
0568デフォルトの名無しさん (ワッチョイ 8b10-b4Py)
垢版 |
2019/11/27(水) 08:49:20.82ID:3l+EKJ1k0
>>562
thinクライアントかな技術的にはできる
セキュリティとか会社のルールとかそこら辺をどうするか

仮想PCにシンクライアントからアクセスして使うとかはよくあると思う
0571デフォルトの名無しさん (スプッッ Sd33-6GDL)
垢版 |
2019/11/27(水) 15:32:40.52ID:oHtwMU01d
脱初心者向けの勉強って何見て何やればいいかな
基礎は入門書で一通り学んでクラスとかの作り方や概念は知ってるけど
実際にクラスをどういう時に使えばいいか分からない
関数とか内部論理が汚いけどどうリファクタリングすればいいかイマイチ分かってない
デザインパターン使えば綺麗になるとか聞くけどなにそれ美味しいの?状態

とりあえず目的を達成するプログラムは超汚いのを組めるってレベルなのです
0572デフォルトの名無しさん (ドコグロ MM63-5f43)
垢版 |
2019/11/27(水) 15:43:15.95ID:vYtjQlD0M
何がしたいのかによるだろ
アドホック分析とか個人的なデータ処理とかでとりあえず動きゃいいんなら作法なんかどうでもいい
複数人でシステム作るんならさっさと就職して現場で叩かれて覚えればいい
OSS開発に参加したいんならOSSのソースを読めばいい
0574デフォルトの名無しさん (スプッッ Sd33-6GDL)
垢版 |
2019/11/27(水) 18:08:08.08ID:oHtwMU01d
>>572
んー 現場が底辺請負だから周りも同レベルぐらいなんだけど
きちんとした知識と技術を身に付けたいんだよ OSSに参画すればいいのかな
Pythonに限らず未経験者向けとかの初心者用の教材はあふれてるけど
中級者向けの教材って殆どないよね
現場でのノウハウとか個人スキルに直結する要素だから
試行錯誤で身に付けるしかないの?
0576デフォルトの名無しさん (ワッチョイ 9301-wiXz)
垢版 |
2019/11/27(水) 18:54:18.28ID:ymKEnJ4Y0
>>571
1. リファクタリング (2000年の旧版で十分、Ruby版はクソ、JS版もエッセンスは旧版と同じ)
2. Clean Code (2008年の旧版で十分)
3. Head First デザインパターン

どれも初心者向けでコードサンプルはJava
古いから今どきこんな書き方しねーよってのはあるかもしれないが
リファクタリング方法やデザインパターンに関わる考え方はOO言語を使う上での基礎なので
それを把握できてないと思うならそこから始めるのがいい

上の本の内容を把握できたらPythonのイディオムやらパターンをオンラインで学んだり
標準ライブラリやメジャーなライブラリのコードを読んだりして少しずつ自分の道具箱を拡張していく
Python詳しくやりたいならPython in a Nutshellってのがおすすめだけど日本語になってるかは知らない
0578デフォルトの名無しさん (ワッチョイ 1333-/L9V)
垢版 |
2019/11/27(水) 20:37:56.94ID:B60R3/9n0
テストを書く
フレームワークを使ってみる
ICMP、TCP、UDP、IP、HTTP、DNS等のプロトコルの勉強
とか
0580デフォルトの名無しさん (ワッチョイ 1901-qZD/)
垢版 |
2019/11/27(水) 20:48:16.49ID:R3eAH8fN0
>>573
インターネッツ検索すると
> Pythonを起動するためのexeファイルに、Pythonのモジュールやスクリプト類を内包したZIPファイルを背負わせる
って出てきた

-onefileオプションを外してみたら、
どうなってるかちょっとは分かるかもしれないかもしれない。
0586デフォルトの名無しさん (ワッチョイ 4142-Ju0T)
垢版 |
2019/11/28(木) 20:00:18.92ID:1KeEHfkK0
numpyのインデックスについてなんですが、配列の値を調べてなんらかの条件で
bool型の配列を返す関数がfunc1とfunc2の2種類あるとして、
以下のように使った場合元のaに対応したbool型配列を得るうまい方法ってなにかあります?

a = np.random.rand(100)
b = func1(a)
c = func2(a[b])

自分で考えたら以下のようになったんですがもっと良い方法はないのか悩んでいます。

e = np.arange(len(a))[b][c]
f = np.zeros(len(a), dtype=bool)
f[e] = True
0588デフォルトの名無しさん (ワッチョイ 8101-MhVQ)
垢版 |
2019/11/28(木) 21:16:25.52ID:K3PYic3H0
>>586
yokokara
0589デフォルトの名無しさん (ワッチョイ adb3-QYLK)
垢版 |
2019/11/28(木) 22:37:53.70ID:RcUEGOs40
自演がばれたから今度は末尾Mで再挑戦やな
0590デフォルトの名無しさん (ワッチョイ 4142-Ju0T)
垢版 |
2019/11/28(木) 23:23:31.37ID:1KeEHfkK0
>>587
ありがとうございます。
小出しで申し訳ないのですが、func2はfunc1の結果で抽出した配列入れる必要があります。
そんな感じで意図が分かりやすい方法があると嬉しいです。
0592デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
垢版 |
2019/11/29(金) 09:44:46.31ID:N/f9f1S7F
>>571
オブジェクト指向入門-第2版-原則・コンセプト 4798111112
オブジェクト指向入門-第2版-方法論・実践 4798111120

初版の方が良いかも知れないが
どれも初心者向けでコードサンプルはEiffel
古いから今どきこんな書き方しねーよってのはあるかもしれないが
リファクタリング方法やデザインパターンに関わる考え方はOO言語を使う上での基礎なので
それを把握できてないと思うならそこから始めるのがいい

上の本の内容を把握できたらPythonのイディオムやらパターンをオンラインで学んだり
標準ライブラリやメジャーなライブラリのコードを読んだりして少しずつ自分の道具箱を拡張していく
Python詳しくやりたいならPython in a Nutshellってのがおすすめだけど日本語になってるかは知らない
0593デフォルトの名無しさん (アウアウウー Saa9-7DzA)
垢版 |
2019/12/06(金) 17:49:29.60ID:4nCUirIna
機械学習関係です。
以下のコードでtrain_df,test_dfの内容が変更されないのですが何がいけないのでしょうか?

import pandas as pd
import numpy as np

train_df = pd.read_csv('/home/weekender/work/titanic/train.csv')
test_df = pd.read_csv('/home/weekender/work/titanic/test.csv')
combine = [train_df, test_df]

for df in combine:
df = df.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1)

print(train_df)
print(df)
0594デフォルトの名無しさん (ワイーワ2 FF93-MVf8)
垢版 |
2019/12/06(金) 17:52:26.49ID:rmctNxUZF
上書きしてないから
0596デフォルトの名無しさん (ワイーワ2 FF93-MVf8)
垢版 |
2019/12/06(金) 18:15:01.36ID:rmctNxUZF
df['train']
df['test']
0597デフォルトの名無しさん (ワッチョイ 7501-cb5P)
垢版 |
2019/12/06(金) 18:27:46.53ID:c6fF/5cl0
yokokara
0600デフォルトの名無しさん (ワッチョイ 25ad-pckF)
垢版 |
2019/12/07(土) 03:32:04.45ID:RYSIJTJ00
Pythonって
覚えること多くて
大変です
つか、ムズイんすけど?

あんたらはさくっと覚えたの?
0601デフォルトの名無しさん (ワッチョイ 7501-cb5P)
垢版 |
2019/12/07(土) 05:58:43.98ID:y8T8hHHg0
>>600
秘技
yokokara
■ このスレッドは過去ログ倉庫に格納されています

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