Python100Daysの研究ノート--- 2日目の言語要素

2日目

言語要素の
命令およびプログラム
計算ユニット、コントローラ、メモリ、入力および出力デバイスをコンピュータ・ハードウェア・システムは、典型的に含む、5員から成ります。ここで我々は通常、中央プロセッサを呼んで一緒にコントローラとオペレータは、その機能は、各種演算や制御命令およびコンピュータソフトウェアのデータ処理を実行することです。私たちは通常、実際に命令の集まりであるプログラムを参照してください、我々はプログラム意志一緒に整理するために、その後、我々はそれがこれらの命令でやりたいようにコンピュータを制御するために、特定の方法で、一連の命令です。今日、彼らはパワーとより強力な処理を、より多くの洗練されたコンポーネントを動作しますが、私たちは、コンピュータの時間のほとんどを使用しますが、本質的にそれはまだコンピュータ「ノイマン型」です。「ノイマン型」二つの重要な点、別の記憶装置と中央処理装置にうち一点があり、第二は、符号化されたバイナリのデータに対して行われます。人間は10本の指を持っているので、バイナリは、「10年ごとに」我々は、ヒトでの使用カウント方法と実質的な違いはありません、「バイナリー一人一人」カウント方法で、小数点を使用してそう(なぜなら、カウント10本の指しか運ぶことができた後、彼らはこの中で計数法二十進法を使用するので、もちろん、すべては例外があり、Mayaは、また、カウント裸足の足の指の長年に起因する可能性が尽くさマヤの私たちが通常使用するカレンダーの指導の下、カウントの異なる種類のカレンダーが、マヤ暦によると、2012年には、いわゆる「太陽智」の最後の年であり、そして2013は新しいです推定に「太陽智」を開始し、その後、この事が誤って通知された方法は、「2012マヤの終末予言」この神話、私たちが安全に推測することができ、今日のように誤って伝え、マヤ文明が遅れていますそして、関連する2つの10進数)を使用。コンピュータの場合、バイナリ物理デバイスは、最も容易に達成される(1が低電圧が0を表し、高電圧を示す)、次いで、コンピュータ「ノイマン型」はバイナリで使用されています。私たちは、すべてのプログラマが仕事への考え方のバイナリ方法を使用することができますが、バイナリの間の関係を理解し、まだ、8進数と16進数との小数、バイナリ、および変換関係での生活にそれを変換する必要はありませんが必要に応じて。あなたはこの点に慣れていない場合、あなたは自分自身や科学についてBaiduの百科事典ウィキペディアに使用することができます。

ヒント:量子コンピュータ上の最近の研究では、量子テレポートの方法を使用して情報を伝えるために、量子力学計算に基づいて、量子コンピュータ、カスプにプッシュされています。2018年6月には、Intelが新しい量子チップの開発を発表し、近くに絶対零度の環境でテストに合格し、2019年、IBMとGoogleは、独自の量子コンピュータを立ち上げました。

変数と型
プログラミングでは、キャリアは、データを記憶するための変数です。データを格納するためのメモリまたはメモリ空間で実際に存在するコンピュータ・データの変数は、変数の値がすべての計算と制御の基礎であり、読み取り、変更することができます。コンピュータからのデータを種々の値に加えて、様々な種類のは、また、データ等のテキスト、グラフィック、オーディオ、ビデオを処理することができる有することができ、異なるデータは、定義された異なるストレージタイプを必要とします。多くのデータPythonでタイプするだけでなく、私たちは新しいデータ型をカスタマイズすることができます(それは後述する)、我々は最初のいくつかの一般的なデータ型を紹介します。

整型:Python中可以处理任意大小的整数(Python 2.x中有intlong两种类型的整数,但这种区分对Python来说意义不大,因此在Python 3.x中整数只有int这一种了),而且支持二进制(如0b100,换算成十进制是4)、八进制(如0o100,换算成十进制是64)、十进制(100)和十六进制(0x100,换算成十进制是256)的表示法。
浮点型:浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,浮点数除了数学写法(如123.456)之外还支持科学计数法(如1.23456e2)。
字符串型:字符串是以单引号或双引号括起来的任意文本,比如'hello'"hello",字符串还有原始字符串表示法、字节字符串表示法、Unicode字符串表示法,而且可以书写成多行的形式(用三个单引号或三个双引号开头,三个单引号或三个双引号结尾)。
布尔型:布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来(例如3 < 5会产生布尔值True,而2 == 1会产生布尔值False)。
复数型:形如3+5j,跟数学上的复数表示一样,唯一不同的是虚部的i换成了j。实际上,这个类型并不能算作常用类型,大家了解下就可以了。

変数名に
各変数のは、私たちは私たちのそれぞれが自分自身の有名な名前と同じを持っていると同じように、それに名前を付ける必要があります。Pythonでは、剛性および非剛性の規則を遵守しなければならないこれらの規則に従うように、変数の命名必要性が強く従うことをお勧めします。

厳格なルール:
変数名の文字によっては、数字、およびアンダースコア(Unicodeの特殊文字を含まない文字は、一般)、番号が開始することはできません。
大文字と小文字を区別(大文字と小文字のAは、2つの異なる変数です)。
キーワード(特別な意味を持つ言葉は、後述する)とシステム予約(そのような関数の名前として、モジュールなど)の言葉競合を言わないでください。
PEP 8つの要件:
小文字、スペル、アンダースコアで接続された複数の単語。
下線保護始まる単一インスタンスの属性は(後述します)。
プライベートインスタンス属性は、(後述する)2つのアンダースコアで始まります。
もちろん、プロのプログラマーとして、変数に(実際にはそれがすべての識別子でなければなりません)の名前の意味を参照してください名前を付けるときを知ることも非常に重要です。

変数が使用される
いくつかの実施例で使用される変数および変数の種類を説明するために以下。

"""
使用变量保存数据并进行算术运算

Version: 0.1
Author: 骆昊
"""

a = 321
b = 123
print(a + b)
print(a - b)
print(a * b)
print(a / b)
print(a // b)
print(a % b)
print(a ** b)

タイプはPythonの関数型の変数で使用することができるがチェックされています。機能のプログラミングと数学関数の概念の概念は同じですが、関数名、独立変数と従属変数を含んでいる私たちは見知らぬ人と考えている数学関数、。あなたは一時的にこの概念を理解していない場合の問題は、我々は後の章で関数を定義し、使用するために専念されますされません。

"""
使用type()检查变量的类型

Version: 0.1
Author: 骆昊
Date: 2018-02-27
"""

a = 100
b = 12.345
c = 1 + 5j
d = 'hello, world'
e = True
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'complex'>
print(type(d)) # <class 'str'>
print(type(e)) # <class 'bool'>

変数は、Pythonは組み込み関数に変換するために使用することができます。

int():将一个数值或字符串转换成整数,可以指定进制。
float():将一个字符串转换成浮点数。
str():将指定的对象转换成字符串形式,可以指定编码。
chr():将整数转换成该编码对应的字符串(一个字符)。
ord():将字符串(一个字符)转换成对应的编码(整数)。

演算のキーボードを介して次のコードは、2つの入力二つの整数整数を達成しています。

"""
使用input()函数获取键盘输入(字符串)
使用int()函数将输入的字符串转换成整数
使用print()函数输出带占位符的字符串

Version: 0.1
Author: 骆昊
"""

a = int(input('a = '))
b = int(input('b = '))
print('%d + %d = %d' % (a, b, a + b))
print('%d - %d = %d' % (a, b, a - b))
print('%d * %d = %d' % (a, b, a * b))
print('%d / %d = %f' % (a, b, a / b))
print('%d // %d = %d' % (a, b, a // b))
print('%d %% %d = %d' % (a, b, a % b))
print('%d ** %d = %d' % (a, b, a ** b))
说明:上面的print函数中输出的字符串使用了占位符语法,其中%d是整数的占位符,%f是小数的占位符,%%表示百分号(因为百分号代表了占位符,所以带占位符的字符串中要表示百分号必须写成%%),字符串之后的%后面跟的变量值会替换掉占位符然后输出到终端中,运行上面的程序,看看程序执行结果就明白啦。

オペレータ
Pythonは、実質的に優先順位リストのすべての演算子を降順で次の表によれば、複数の演算子をサポートし、複数のオペレータを参照して演算子の優先順位が同時に発生し、最初の何をすべきかを計算します算術何を行います。我々は代入演算子と算術演算子を使用していた前に加えて、我々は、後述する他の演算子を使用し続けます。

运算符	描述
[] [:]	下标,切片
**	指数
~ + -	按位取反, 正负号
* / % //	乘,除,模,整除
+ -	加,减
>> <<	右移,左移
&	按位与
^ \|	按位异或,按位或
<= < > >=	小于等于,小于,大于,大于等于
== !=	等于,不等于
is is not	身份运算符
in not in	成员运算符
not or and	逻辑运算符
= += -= *= /= %= //= **= &= |= ^= >>= <<=	(复合)赋值运算符
说明: 在实际开发中,如果搞不清楚运算符的优先级,可以使用括号来确保运算的执行顺序。

次の例では、使用及び代入演算子複合代入演算子を示します。

"""
赋值运算符和复合赋值运算符

Version: 0.1
Author: 骆昊
"""

a = 10
b = 3
a += b # 相当于:a = a + b
a *= a + 2 # 相当于:a = a * (a + 2)
print(a) # 想想这里会输出什么

次の例では、比較演算子(関係演算子)、および論理演算子オペレータのアイデンティティを証明します。

"""
比较、逻辑和算身份运算符的使用

Version: 0.1
Author: 骆昊
"""

flag0 = 1 == 1
flag1 = 3 > 2
flag2 = 2 < 1
flag3 = flag1 and flag2
flag4 = flag1 or flag2
flag5 = not (1 != 2)
print('flag0 =', flag0) # flag0 = True
print('flag1 =', flag1) # flag1 = True
print('flag2 =', flag2) # flag2 = False
print('flag3 =', flag3) # flag3 = False
print('flag4 =', flag4) # flag4 = True
print('flag5 =', flag5) # flag5 = False
print(flag1 is True) # True
print(flag2 is not False) # False

ここに画像を挿入説明

ここに画像を挿入説明

ここに画像を挿入説明

公開された124元の記事 ウォンの賞賛141 ビュー160 000 +

おすすめ

転載: blog.csdn.net/weixin_36838630/article/details/105202881