Casio Python - int() / float()

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     - リファレンス 
目次
int() / float()

Python公式サイト:float()

初版:2020/07/25

[対応モデル] - fx-CG50 OS3.20 以降、fx-9750GIII / fx-9860GIII OS3.21 以降


Int(x, base=10)
引数に指定した数値または文字列を整数に変換して返します。
・引数が1つの場合は、デフォルトで10進数に変換します。
・補機数が2つの場合は、変換する整数の進数を指定します。
・引数を指定しなければ、0 を返します。

スクリプト例:
num = int(10)
print(num)
10

num = int(12.34)
print(num)
12

num = int()
print(num)
0

int('12.34')
print(num)
12

int('1010', 2)
print(num)
10

int('2F', 16)
print(num)
47


float(x)
引数に指定した数値または文字列を浮動小数点に変換して返します。
・引数を指定しなければ、0.0 を返します。

スクリプト例:
num = float(12.34)
print(num)
12.34

num = float(10)
print(num)
10.0

num = float()
print(num)
0.0

num = float('3.14')
print(num)
3.14




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ

関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Python - for 文

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     - リファレンス 
目次
for 文


初版:2020/07/08
修正:2020/07/10

[対応モデル] - fx-CG50 OS3.20 以降、fx-9750GIII / fx-9860GIII OS3.21 以降


反復可能オブジェクト、具体的には、文字列型、リスト型、タプル型、range型 などのシーケンス型のオブジェクト(要するに配列)の要素を順に使いながら、反復処理を行います。


1. C言語や Casio Basicfor文に近い使い方は、以下のスクリプト例でしょう。
スクリプト例:
s = 0
for x in range(1, 11):
 s = s+x
print(s)
動作:
1+2+3+・・・+9+10 を計算した結果 s (=55) を表示します。
x の値を 1 から 10 まで1つづつ変化させながら、s = s+x を反復します。
range(1, 11) の2つめの引数は、11 になっていますが、これよりも1つ少ない値までが実際に使われるのは、range() の仕様です。ここでは、range() は数値のリストを作ります。
range() のリファレンスも参照してください。

スクリプト例:
s = 0
for x in range(1, 11, 2):
 s = s + x
print(s)
動作:
range() 関数の第3引数 (この場合は 2) は、2 飛びで for 文に値を適用することを指示します。
つまり、1+3+5+7+9 を計算します。その結果は 25 になります。


2. Python の for文で使える便利な機能として、リストの要素を最初から順に x に適用して、反復処理を行う例です。
スクリプト例:
number = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
s = 0
for x in number:
 s = s+x
print(s)
動作:
numberリスト の要素を最初から最後まで順に使いながら処理を反復する例です。具体的には 1+2+・・・+9+10 を計算した結果 s (=55) を表示します。リスト [1, 2, 3, ・・・, 9, 10] の要素を順に x に適用しながら反復処理を行っています。


3. 文字列リストの要素を順に割り振って反復処理を行う例です。
スクリプト例:
selection = ['C language', 'Casio Basic', 'Casio Python', 'C#']
for language in selection:
 print('I love ' + language)
動作:
以下のような出力になります。
I love C language
I love Casio Basic
I love Casio Python
I love C#
selectionリストの要素は文字列になっており、順番に適用して反復処理で使われていることが分かります。


4. 文字列を使った反復処理の例を挙げます。
スクリプト例:
string = 'Python^.^'
for character in string:
 print(character)
動作:
文字列は文字のリストなので、リストの要素である文字を頭から順に適用しながら反復処理を行います。
実行すると以下のような表示になります。
P
y
t
h
o
n
^
.
^


5. Casio Python はグラフィックス画面(描画画面)への出力がメインになるような使い方が多いと思うので、グラフィックス画面に点を描画する例を挙げます。(fx-CG50 / 9750GIII / 9860GIII OS3.40 以降のみ対応)
スクリプト例:
fron casioplot import *
for x in range(384):
 set_pixel(x, 96)
 show_screen()
動作:
グラフィックス画面中央に左から右へ点を描画した結果、直線が描画されます。for x in range(384): は、0 から 383 までの整数値を順に x に適用します。グラフィックス画面は横方向に 384 個のピクセルで構成され、左端の座標値が 0、右端の座標値は 383 になっています。ピクセルの座標値だけでなく、個の要素がある時、0 から n-1 までのインデックスが割り振られる例は、プログラミングではごく普通のことです。従って、range(p) とした場合は、0 から p-1 までのインデックスが割り振られる仕様になっています。便利だからこのような仕様になっているわけです。


6. Casio Python のグラフィックス画面を点で埋め尽くす例を挙げます。(OS3.40 以降のみ対応)
スクリプト例:
from casioplot import *
for y in range(192):
 for x in range(384):
  set_pixel(x, y)
  show_screen()
動作:
グラフィックス画面の座標 (x, y) に連続的に点を描画します。具体的には、左端から右端までの直線を上から下へ描画してゆきます。


7. for 文の反復は break で中断します。
スクリプト例:
number = [9, 3, 8, 0, 6, 5, 1]
exist = False
for x in number:
 if x==0:
  exist = True
  break
if exist:
 print('found 0')
else:
 print('not found 0')
動作:
ランダムな順序で並んでいる 一桁の整数が要素になっているリストnumber に 0 が含まれているかを調べるスクリプトです。for x in number: の書式は上で説明しています。 最初に exist変数を False としておき、反復処理の中で、0 が見つかったら True に変更します。繰り返しが終わった後、exist 変数の値に応じて結果を出力します。
0 が見つかれば、そこで反復処理を終了するために、break ステートメントを使っています。


8. Python の for文は、else が使えて、意外に便利です。
スクリプト例:
number = [9, 3, 8, 0, 6, 1, 7]
for x in number:
 if x==0:
  print('found 0')
  break
else:
 print('not found 0')
動作:
上の例7と同じことを行うスクリプトですが、else を使うことでスクリプトがシンプルになります。else ブロックは break せずに for ループが回りきったときに実行されます。言い換えると for 文の else はループが break で終了しない時に実行され、break で終了した時には実行されません。
elsefor と同じインデントレベルに記述する必要があります。elseif と同じインデントレベルだと動作が異なります。


9. continue を使った例
スクリプト例:
while 1:
 key = input('Input key')
 if key.isdigit():
  print('['+key+'] is pressed')
 else:
  
continue
動作:
電卓のキーを押して、それが数字のキーならば押したキーを表示し、それ以外のキーならば continue によりwhileループを継続します。


10. pass を使った例
スクリプト例:
while 1:
 key = input('Input key')
 if key.isdigit():
  pass
  print('['+key+'] is pressed')
 else:
  continue
動作:
例9 と同じ動作をします。pass は何もしないというステートメントなので、何もしません。





応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ

関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Python - range()

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     - リファレンス 
目次
range()


初版:2020/06/23
追記:2020/07/09

range()
は、反復可能なシーケンスを作り、for文 による反復処理において、シーケンスの要素を順に適用しながら特定回数の反復を行うために使われます。ここで言うシーケンスとは、リスト型、文字列型、タプル型のオブジェクトです。


1. 典型的なfor文での使い方 - Casio Python 独自
スクリプト例
p = 2.1
print(p)
for count in range(p):
 print(count)
動 作
シェルへ 浮動小数点型の pprint(p) で出力し、その後 for 文により countprint(count) で出力を複数回実行します。数値を要素としたリストを生成し、その要素を順に count に代入しながら反復処理を行っています。
2.1
0
1
2
p が整数でなく浮動小数点であるのにエラーにならず、p の値を切り上げた整数値として range() が動作します。
これは、for 文で使うときの Casio Python 固有の仕様だと思われます。
本来 CPython ではエラーになるコードです。さらに MicroPython のサイトでは p が浮動小数点でも良いという点については CPython との違いとして公開されていません。つまり Casio Python 独自拡張の可能性が高いと思います。


2. 整数範囲を指定してfor文で使う例 - ckChr.py
スクリプト例:
for c in range(30,128):
 
print(str(c)+':'+chr(c))
動作:
アスキーコード 30 から 127 までに対応する文字を出力します。
Casio Python では、アスキーコード32のスペースから、126 の ~ までに文字コードが割り振られています。
chr() 関数の仕様が Casio Python 独自で、ユニコードに対応しておらずアスキーコードに対応しています。


3. 整数範囲とステップを指定してfor文で使う例
スクリプト例:
for c in range(1.5, 10, 2):
 print(c)
動作:
range(start, stop, step) で、startから stop-1 まで、step刻みでリストを生成します。実行すると以下のように表示されます。
1.5
3.5
5.5
7.5
9.5


4. for文で使わず、反復シーケンスを生成する例
スクリプト例:
number = list(range(1,11))
print(number)
動作:
number = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] を生成します。
実行すると以下のように表示されます。
[1,2,3,4,5,6,7,8,9,10]


5. その他のfor文での使用例
for文のリファレンスを参照してください。




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Python - type()

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     - リファレンス 
目次
type()


初版:2020/07/05

[対応モデル] - fx-CG50 OS3.20 以降、fx-9750GIII / fx-9860GIII OS3.21 以降


オブジェクトを与えると、オブジェクトの型を返します。


スクリプト例:
print(type(1234))  #整数型 (int型)
print(type(12.34))  #浮動小数点型 (float型)
print(type('abcd'))  #文字列型 (str型)
print(type(['a', 'b', 1, 2]))  #リスト型 (list型)
print(type(1, 2, 3, 4))  #タプル型 (tuple型)
print(type({'one':'eins', 'two':'zwei', 'three':'drei'}))  #辞書型 (dict型)
print(type({1, 2, 3, 4}))  #集合型 (set型)

if type(1234) is int:  #整数型なら 'int' と出力
 print('int')
if type(12.34) is float:  #不動小数点型なら 'float' と出力
 print('float')
if type('abcd') is str:  #文字列型なら 'str' と出力
 print('str')
if type(['a', 'b', 1, 2]) is list:  #リスト型なら 'list' と出力
 print('list')
if type((1, 2, 3, 4)) is tuple:  #タプル型なら 'tuple' と出力
 print('tuple')
if type({'one':'eins', 'two':'zwei', 'three':'drei'}) is dict:  #辞書型なら'dict'と出力
 print('dict')
if type({1, 2, 3, 4}) is set:  #集合型なら 'set' と出力
 print('set')

動作:
実行結果は、下記になります。
<class 'int'>
<class 'float'>
<class 'str'>
<class 'list'>
<class 'tuple'>
<class 'dict'>
<class 'set'>

int
float
str
list
tuple
dict
set

Casio Python の組込データ型、int型(整数型)、float型(浮動小数点型)、str型(文字列型)、list型(リスト型)、tuple型(タプル型)、dict型(辞書型)、set型(集合型)の判定を行っています。
前半は print() を使って、データ型をそのまま表示しています。
後半は、is ステートメントを使った判定を行っています (実際によく使う例だと思います)。





応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ

関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

プログラム電卓を実際に使って気づいたこと、自作プログラム、電卓での Casio Basic, C.Basic そして Casio Python プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではありません。いつでもどこでもプログラミングができるプログラム電卓が好きな1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR