Python学習中(2)

以下の本をbookoffで購入した。今気づいたのだが、一冊目の図解の本と同じ著者だ。

入門者のPython プログラムを作りながら基本を学ぶ (ブルーバックス)

土曜日かけて、3つのプログラム紹介しているうちの大部を占める最初のところをすべて読んだ。393ページ中、295ページ。

少し冗長な感がするが、初心者には丁寧な記載だと思う。初心者に対する匙加減の感覚

がわからないが、これでいいのだろう。ただ、ほかのプログラム言語をしらなくても

読めるのではと思う。条件分岐、繰り返しの文法は、どのプログラム言語でも基本ではある。しかし、これが出てくるのが後の方である。二つ目の例は、まだだが、webスクレイピングが紹介されている。

ちなみに editorは、同じ著者だが、今回は、Spyderである。

時間ないので、詳細の紹介はここまで。まあまあいい本である。

これからは、本格的に立ち上げるために、入門 Python 3 を上と同時に手に入れた(550円だったか)ので、これを読む。入門とあるがそれなりに骨があり、初心者向けでないらしい? 他言語を知っている人向きか。。

第二版がでているらしい。 今日はここまで。

 

Python学習中

図解! Pythonのツボとコツがゼッタイにわかる本 “超"入門 をざっと読んだ。

これはだいぶ前。

anacondaというプログラミング環境をinstallして使う。これをinstallすれば、python

や付属ライブラリ及びeditorも同時にインストールされる。

結構重い感じ。他でもanacondaを紹介しているケースが見られた。

特に初心者は、個別にあれこれインストールして環境設定するのは大変なので都合がよいと思う。

内容は、初心者向け。くどい感じがするが、雰囲気を理解すればよい。

最後は、流す感じで全部は追わなかった。

なお。editorは、Jupiter Notebookを使っている。(Anaconda Navigator利用せず)

次に、どういったことが仕事とかで使えるかを見るために、以下の本を眺めた。

現在もちょこちょこ見ている。

作業が一瞬で片付く Python自動化仕事術

こちらは、Anaconda Navigator からJupiterLabを起動させた後、そこから、Notebook

を選択して、これをeditorとしていた。Jupitor Notebookと見た目は同じ。実は同じ?

print('test')が実行できれば、とりあえずいいだろう。ただ、文末にセミコロンが不要なのに戸惑う。次にライブラリ操作だ。すでに組み込まれているライブラリは、import

して使う。組み込まれていない場合は、pin install ライブラリ名でinstallする。

今回は、地図表示のツール?のために pip install foliumとした。

うまく動いたが、Anaconda NavigatorのEnvironmentsにinstalledのライブラリとして

登録されていない。なぜだ? install は、本に書いてある通りでなく、Jupiter Notebookでした。これが原因? とりあえず、動くから、しばらく無視する。

Pythonをインストール

pythonをインストールしてみた。以下をみながら。全部の作業はしていない。

Anaconda3 2023.07 のインストール(Windows 上) (kkaneko.jp)

下記の本を見ているが、優しすぎるか? 適切な本かどうかわからないが

とりあえず、ざっと見よう。

●図解! Pythonのツボとコツがゼッタイにわかる本 超入門編(秀和システム

次はこっちかな?

Python「完全」入門  松浦健一郎/司ゆき SB Creativ

 

そもそもPythonで何ができるかだ。 以下があげられる。

 Pythonでできること7選!コード例をまじえて解説!|スタビジ (toukei-lab.com)

  データ集計・加工・描画

『データ分析が絡むなら単体で強力』 まあデータ分析関係なら基本的にPythonの右に出る言語はのところいないでしょう。』

だから、科学技術計算にも利用できる。

1. 科学技術計算のために Python を始めよう。 — Scipy lecture notes (turbare.net)

Pythonで気軽に化学・化学工学 | Chem-Station (ケムステ)

 

大阪夏の陣(7/30)

7/30に増田俊男氏の講演(大阪夏の陣)を聞きにいった。場所は、御堂会館。午前の部は、増田さんの恩師(松修二郎氏:マルカイコーポレーション)の講演。午後は、増田さんの講演。
1974 マーケット車 1% アメリカで 日本車? 修理工場
ちょうど将軍 たたみ ぶん?
大阪 退廃 日本人移民
第2部 増田さんの感想?
アメリカ人を理解するのは難しい
竹中
ウエルマート アメリカ成功 やり方:優秀な人をかたぱっしから引き抜く。
       しかし日本人はほしいものがないので成功しなかった
地域にあったやりかた。
ライス アメ導入? 日本で再調整

第2部
2日まえにヨーロッパから帰ったばかり。
祝電 亀井、森?
・コナコーヒー がフランスのリッツパリで販売権 ヨーロッパは、ブルーマウンテン

1)世界はどうなっていくか?
2)政治、経済はどうあるべきかを話すと 2001-2020
アメリカの自由拡大時代となる。 アメリカを見れば世界がわかる
2001/1 Bush政権
2001/3 株 Max

ピラミッド型   大きな政府
情報収集      情報コントロールシステム
 ↓

個人間    政府のゆうこときかない 年金
アメリカは このような状況を理解している。


金集める → インフラ
NewEconomy宣伝→アメリカに金 株が高くなる?
  ↓
インフラ完成 →金余り →金利あがるので→WorldCom株売り→暴落(2000/3)

 政府は こうしないといけない。
強いものが弱いものを支配する 高いところから低いところへ同じ。
指導力 equal 誤解力  神の摂理で決まっている。

世界に自由を拡大している

第2部
 経済中心 
 disclose せいたくなくして経済成長なし
 ダウ平均
  10000$ 1000000円

Perl(3)

9章 正規表現の利用法 つづき
 my $likes_perl =( =~ /\byes\b/i);
 if ($likes_perl) {
   ...
 }
 p141 メタキャラクタの取り扱いについて 記述が??
 9.5 マッチ表現
  $4:すでに完了したパターンマッチの4番目の正規表現メモリを表す
  \4:現在マッチを行っている正規表現メモリを参照する後方参照
 パターンマッチの結果を条件
  if ($wilma =~ /(\w+)/){
   ...
  }
 14章で$1を使わないでパターンマッチと同時に正規表現メモリを変数に直接セットする方法を示す。
  疑問:()をマッチさせたい場合は? メモリと扱わない
 9.5.2 自動マッチ変数
  $&:マッチ下部分全体
  $`:マッチした部分より前
  $':マッチした部分より後
 9.6 s///を使って置換を行う
  s///演算子は値を返す。
  if(s/fred/wilma/){
   ...
  }
  /gによるグローバルな置換
 9.6.2 別のデリミタを使う
  s#^https://#http://#;
  s{fred}{barney};
  s#barney#;
 9.6.3 オプション修飾子(/i /s)
  s{__END__.*}{}s; エンドマーかとそれ以降のすべての行を捨てる。
  → すべてが可能なのか?
 9.6.5 大文字と小文字の変換
   \U: 後ろにつづくものを強制的に大文字にする。
   \L: 小文字にする。
   \E:変換を中止。
   \l:一文字だけ大文字。
   \u:一文字だけ大文字。
 9.7 split演算子
   指定されたセパレータに従って、文字列を分割する。
   @fields = split /separator/, $string;
   @fields = split /:/, "abc:def:g:h";
   デフォルトでは、 $_の内容を空白文字で分割する。
   my @fields = split;

   p150の ' 'と\sの違いの説明が不明。
 9.8 Join関数
   splitの逆関数 
   my $result = join $glue, @pieces;
   my $x = join ":", 4, 6, 8, 10,12; # $x="4:6:8:10:12"

   練習問題 9章3 Good。
10章 さまざまな制御構造
 10.1 unless制御構造
     unlessのelse節
 10.2 until制御構造
 10.3 式修飾子
    print "$n is a negative number.\n" if $n < 0;
    修飾子の両側は、単一の式しか許さない。
 10.4 裸のブロック構造
 10.5 elsif節
 10.6 autoincrement/decriment
    $bedrock++; ++$bedrock;
    $bedrock--;
    my $b = ++$a; 先にincrement
    my $b = $a++; 先に代入
    my @people = qw{ };
    my %seen;
    foreach (@people){
     print "I've seen you somewhere before,$_!\n"
       if $seen{$_}++;

 10.7 for制御構造
    /initialization/test/increment/

   for (;;){
   }
   while(1){
   }
   * foreach文とみなすこともできる

 10.8 ループ制御
   last演算子
    ループの実行を即座に終了
   next演算子
    現在行っている繰り返しを終了。ループを終了させるのではない。
    p166 プログラム 参考
   redo演算子
    条件式をテストしないでループの先頭にもどる
    同じ制御変数に対して繰り返す
   ラベル付ブロック
 10.9 論理演算子
    && ||
11章 ファイルハンドルとファイルテスト
   6つのファイルハンドル名 
   STDIN/STDOUT/STDERR/DATA/ARGV/ARGVOUT
  p179 標準エラーストリームへの送り方
  open CONFIG, "dino";
  open CONFIG, "fred";
  open LOG, ">>logfile";
 11.3 dieによって致命的エラーを発生させる
   unless (open LOG, ">>logfile"){
    die "Cannot create logfile: $!";
   }
   システムへの要求が失敗した直後に有効。
   p184の改行コードをいれる方法がわからない。
   warn関数 も似ている。詳細わからず。
 11.4 ファイルハンドルを使う
   print LOG "Captain\n";
   ファイルハンドルと表示される項目の間には、コンマを置かない。
   p187 具体的な書き方は?
   select演算子で出力ファイルハンドラの変更を行う。
   select BEDROCK;
   $| の意味がわからない。 p187
 11.5 標準ファイルハンドルを再オープンする。
   open STDERR, ">>/home/barney/.error_log" or die ...;
 11.6 ファイルテスト
   if -e filename 既にあるファイルが上書きされないように
   if -M CONFIF >28

    stat関数/lstat関数
    localtime関数
    ビット演算子
    ビットストリングを使う