よちよち歩きのpython3 : pycharm-edu 、数値計算 ( SciPy NumPy)
紅茶のように 緑茶に砂糖をいれて飲んでみた、結構いけてる。なお archman で以下はしました。 C言語は難しいので 大工の棟梁のもとで修行しないと一人前になれない。しかしPythonは日曜大工DIYの世界なのでTV講座でなんとかなる、一人でもいける。
攻撃者になったつもりで考えることです。 攻撃者がどうやったらコードを悪用するだろうか |
攻撃者のかわりに ヤクザといってもいいですね |
彼らは善意なる考えはすべて却下。 悪意に満ちた考えの中で おばかなものは採用せず、 よく考え練られたもののみを採用する。 つまり 高度に知的レベルの高い悪魔的存在 |
1)アイドルを探せ
idle-python3.7-assets 1.0-1
をAURでいれると
Developmentのところに IDLEがでてくる、でも使わないほうがいい、でも一応次図。
使うべきは ずっと下の C)に書いた pycharm-edu と思う
2) 簡易計算機
3) よちよち歩きには
七転び 八転びでやってます |
---|
独学プログラマー (日経BP)は とっつきやすくて クラスをも含む全体像はながめられるけど、 英語がOkなら https://automatetheboringstuff.com/ のほうがはるかに懇切丁寧でいい。なお独学プログラマーの正誤表は http://public-errata.appspot.com/errata/book/9784822292270/ にある |
4)関数
>>> def f(x):
... return x**3
... 注:一行空けてね
>>> y=f(5)
>>> print (y)
125
5)input
>>> age = input("irete:") 注:末尾の「:」忘れないでね
irete:20
>>> int_age=int(age)
>>> if int_age < 30:
... print("young")
... else:
... print("old")
...
young
>>> def even_odd(x):
... if x % 2 == 0:
... print("even")
... else:
... print("odd")
... 注:一行空けてね
>>> even_odd(2)
even
>>> even_odd(3)
odd
#!/bin/python3
def even_odd():
n = input("type a number")
n = int(n)
if n % 2 == 0:
print("n is even.")
else:
print("n is odd.")
even_odd()
even_odd()
even_odd()
---------
./1.py
type a number15
n is odd.
type a number18
n is even.
type a number
6) scope
cat scope.py
#!/usr/bin/python3
x = 1
y = 2
z = 3
def f():
print(x)
print(y)
print(z)
f()
-----------
$ ./scope.py
1
2
3
7) module
https://docs.python.org/ja/3/py-modindex.html にmathなどのモジュールが載ってる |
---|
open@t620 tstp $ pwd
/home/open/tstp
open@t620 tstp $ cat hello.py
#!/bin/python3
def print_h():
print("hellow")
open@t620 tstp $ cat project.py
#!/bin/python3
import hello
hello.print_h() 注:左詰め!
open@t620 tstp $ ./project.py
hellow
無料でも英語でんねん)
A) youtube 上で講義がある
B) anaconda がAURにある
https://knowledge.sakura.ad.jp/17235/
によると
科学技術計算においてはCやC++、Fortranといったプログラミング言語のほか、
Matlab やその互換環境、Mathematica、Rといったソフトウェアが多く用いられていた。
Anacondaの特徴としては、デフォルトでPythonに加えて科学計算に必要なライブラリやさまざまなユーティリティがインストールされることが挙げられる。これをインストールするだけで、とりあえずすぐにPythonや科学計算のための主要ライブラリが利用できるようになる。GUIでパッケージのインストールやアップデート、検索を行えるツールも同梱されている。 |
---|
pacman -U anaconda-2019.03-1-x86_64.pkg.tar.xz
loading packages...
resolving dependencies...
looking for conflicting packages...
Package (1) New Version Net Change
anaconda 2019.03-1 3285.96 MiB
Total Installed Size: 3285.96 MiB
:: Proceed with installation? [Y/n]
Please run
$ source /opt/anaconda/bin/activate root
$ source /opt/anaconda/bin/deactivate root
でも ここからはCUIだねえ、 よちよち歩きには到底無理
C) pycharm-professional 2019.1.3-1 もAURにある
こっちは GUIだね
しかしpycharm-professionalは優良なので
pycharm-edu.tar.gz を利用してみることとした。
で親切なマニュアルは https://pleiades.io/help/pycharm/guided-tour-around-the-user-interface.html
にある
以下のスクリプトで 先頭行に #!/bin/python3 がつく
for x in `ls *.py`
do
echo '#!/bin/python3' >p.py
cat $x >> p.py
cp p.py 1-$x
chmod +x 1-$x
done
でたとえば
cat 1-hello.py
#!/bin/python3
# This program says hello and asks for my name.
print('Hello world!')
print('What is your name?') # ask for their name
myName = input()
print('It is good to meet you, ' + myName)
print('The length of your name is:')
print(len(myName))
print('What is your age?') # ask for their age
myAge = input()
print('You will be ' + str(int(myAge) + 1) + ' in a year.')
X1) 科学計算
yayを pacman -Sy yay で入れたあと
$ yay pip-tools
1 aur/pip-tools 4.1.0-1 (+9 1.29%)
A set of tools to keep your pinned Python dependencies fresh.
==> Packages to install (eg: 1 2 3, 1-3 or ^4)
==> 1
:: Checking for conflicts...
:: Checking for inner conflicts...
[Repo: 21] python-click-7.0-1 python-msgpack-0.6.1-1 python-urllib3-1.25.3-1 python-chardet-3.0.4-2 python-idna-2.8-1 python-requests-2.22.0-1 python-cachecontrol-0.12.5-4 python-colorama-0.4.1-1 python-distlib-0.2.9-1 python-distro-1.4.0-1 python-webencodings-0.5.1-2 python-html5lib-1.0.1-3 python-lockfile-0.12.2-4 python-pytoml-0.1.21-1 python-more-itertools-4.3.0-1 python-zipp-0.6.0-1 python-importlib-metadata-0.19-1 python-pep517-0.6.0-1 python-progress-1.5-1 python-retrying-1.3.3-4 python-pip-19.0.3-1
[Aur: 1] pip-tools-4.1.0-1
:: Downloaded PKGBUILD (1/1): pip-tools
1 pip-tools (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> N
:: Parsing SRCINFO (1/1): pip-tools
[sudo] password for fujitsu:
resolving dependencies...
以下省略で
(1/1) installing pip-tools [----------------------] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
確かに
$ pacman -Q| grep pip
libpipeline 1.5.1-1
pip-tools 4.1.0-1
pipewire 0.2.6+1+g37613b67-1
python-pip 19.0.3-1
と入った
# pip install numpy
# pip install matplotlib
python3して
>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> x = np.arange(0, 5, 0.1)
>>> y = np.sin(x)
>>> plt.plot(x,y)
>>> plt.show()
その後
# pip install scipy
して
科学計算の力を Python にインポートする.Python で使用することになる強力な科学計算モジュールとしては、NumPy と SciPy の 2 つが挙げられます。NumPy には多数の強力な機能が含まれていますが、なかでも、ここで特に興味深いのは、同じデータ型の数値の集合を作成して、array という名前の単一の変数に割り当てることができる機能です。また、このモジュールには線形代数、フーリエ変換、乱数を処理する機能も幅広く揃っています。SciPy は、NumPy に加え、他の多数のパッケージからなる包括的な科学計算エコシステムです。 |
---|
となりました。
# pip install sympy
Collecting sympy
Downloading https://files.pythonhosted.org/packages/21/21/f4105795ca7f35c541d82c5b06be684dd2f5cb4f508fb487cd7aea4de776/sympy-1.4-py2.py3-none-any.whl (5.3MB)
|████████████████████████████████| 5.3MB 3.1MB/s
Collecting mpmath>=0.19 (from sympy)
Downloading https://files.pythonhosted.org/packages/ca/63/3384ebb3b51af9610086b23ea976e6d27d6d97bf140a76a365bd77a3eb32/mpmath-1.1.0.tar.gz (512kB)
|████████████████████████████████| 522kB 1.7MB/s
Installing collected packages: mpmath, sympy
Running setup.py install for mpmath ... done
Successfully installed mpmath-1.1.0 sympy-1.4
# exit
exit
$ cat k-sosuu.py
from sympy import sieve
print([i for i in sieve.primerange(10000,11000)])
として
$ python3 k-sosuu.py
[10007, 10009, 10037, 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, 10939, 10949, 10957, 10973, 10979, 10987, 10993]
と 10000と11000の間の素数がでてくる。
面白い
Author And Source
この問題について(よちよち歩きのpython3 : pycharm-edu 、数値計算 ( SciPy NumPy)), 我々は、より多くの情報をここで見つけました https://qiita.com/tyokai/items/d8494fbc8fca00453cd1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .