1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AUTOSAR CountdownAdvent Calendar 2022

Day 19

プログラムちょい替え(9) python(35) 標準入力: docker(95) coding(115)

Last updated at Posted at 2019-07-18

pythonで標準入力を、ちょっとだけ使いたい場合の例

プログラムちょい替え

プログラムちょい替え(0)一覧
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394

Qiitaに掲載されているプログラム、Wikiに掲載されているプログラム、オープンソースのプログラムをちょいと替え
1 汎用性を高める
2 Dockerで動作させる
3 拡張性を高める
4 自分の目先の問題を解決する
ことなどを実現しようとしています。

#標準入力使うpythonプログラム

参考にさせていただいたのはこちら。

Python3 標準入力基本
https://qiita.com/kRysTasis/items/b1f81779628ba1c2aef9

数値入力の場合を考える。

input.data
123
456

このデータは小さい。手で打ってもよい。

# vi input.data

肝心なpythonのプログラム

input.py
#! /usr/bin/env python3
# coding: utf-8

print(int(input()))

エラー処理は全く考えていない。
実行権を付与(2回目からchmod不要)し、実行。

docker.python3
# chmod +x input.py
# ./input.py < input.data
123

標準入力の数値データが2行を出力する場合、実行可能なプログラムをcp(複写)するとchmodしなくても実行権がある。

docker.python3
# cp input.py input2.py
# vi input2.py
# ./input2.py < input.data
123
456

viでの編集内容は下記

input2.py
#! /usr/bin/env python3
# coding: utf-8

print(int(input()))
print(int(input()))

docker hub

dockerで使う場合。

$ docker run -it kaizenjapan/python3-input /bin/bash

docker(32) docker耐久試験
https://qiita.com/kaizen_nagoya/items/83aa733001ae7026bf70

に書いたように、不要な10Gのデータがり、重いです。
軽いデータのない版、来週作ります。

軽い版

来週と書いて、年末になってしまいました。ごめんなさい。
/home/python3にファイルを置いています。

$ docker run  -v /tmp/docker:/tmp/docker -it kaizenjapan/python23 /bin/bash

-v /tmp/docker:/tmep/dockerは、dockerを起動するシステムに/tmp/dockerというフォルダが利用可能な場合に記載。フォルダ名は、利用できるもので、docker側が空のものであればよい。

docker(89) dockerでpython2, python3
https://qiita.com/kaizen_nagoya/items/ecbe11a4d743357134d5

Reference

Ethernet 記事一覧 Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48)
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網(Wi-Fi)空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

C++ Support(0) 
https://qiita.com/kaizen_nagoya/items/8720d26f762369a80514

Coding Rules(0) C Secure , MISRA and so on
https://qiita.com/kaizen_nagoya/items/400725644a8a0e90fbb0

coding (101) 一覧を作成し始めた。omake:最近のQiitaで表示しない5つの事象
https://qiita.com/kaizen_nagoya/items/20667f09f19598aedb68

Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76

Error一覧(C/C++, python, bash...) Error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

言語処理100本ノックをdockerで。python覚えるのに最適。:10+12
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4

プログラムちょい替え(0)一覧:4件
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

官公庁・学校・公的団体(NPOを含む)システムの課題、官(0)
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

自動制御、制御工学一覧(0)
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

Rust(0) 一覧 
https://qiita.com/kaizen_nagoya/items/5e8bb080ba6ca0281927

小川清最終講義、最終講義(再)計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>

文書履歴(document history)

ver. 0.01 初稿 20190728
ver. 0.02 python23追記 20191231

最後までおよみいただきありがとうございました。

いいね、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon and

1
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?