这是台湾王一哲老师写的教程,在这里免费提供给有需要的人学习Python的3D编程。
链接:https://pan.baidu.com/s/1rCaWcdKZMMadtuueGY-A5w
提取码:y4bh
——————————————————————
以下是教程样例,学过Python基础的忽略….
# Python基本语法
> 作者:王一哲
> 日期:2018/3/6
## 判断条件:if
最简单的语法为
“`python
if(条件):
条件成立时执行的程式码
“`
当条件成立时执行冒号下的程式码,程式码必须从if 的位置开始缩排,假设使用的缩排为4 个空格,则在条件成立时要执行的程式码每行都要缩排4 个空格,若某一行没有缩排,从此行开始会被视为if 的部分已经结束。如果条件成立时执行的程式码只有一行,可以直接放在冒号之后不需换行。
如果要加上条件不成立时执行的程式码,语法为
“`python
if(条件):
条件成立时执行的程式码
else:
条件不成立时执行的程式码
“`
如果条件不只有一个,可以使用多层的if,语法为
“`python
if(条件1):
条件1成立时执行的程式码
elif(条件2):
条件1不成立、条件2成立时执行的程式码
else:
条件1、2皆不成立时执行的程式码
“`
## 程式2-1:if 的使用方法
“`python=
a = int(input(“a = “))
b = int(input(“b = “))
if(a > b):
print(“a > b”)
else:
print(“a <= b”) if(a > b):
print(“a > b”)
elif(a == b):
print(“a = b”)
else:
print(“a < b”)
“` 执行时先由使用者用键盘输入a、b 的值,由于输入的资料会被视为字串,加上int 将字串转换为整数。虽然Python 在输入的资料看起来很像数字时,会自动将输入的资料格式转换为数字,但是加上int 强制转换为数字是比较保险的作法。第一个if 是:当a > b 时印出文字a > b,若条件不成立则印出文字a <= b。第二个if 是:当a > b 时印出文字a > b,当a == b 时印出文字a = b,若条件不成立则印出文字a < b。
在Python、C、C++及大部分的程式语言当中,**等号= 用来指定数值给变数**,例如a = 2 是将2 这个数值指定给变数a;**若要比较两个变数是否相等,要使用==**,这与数学式子的写法不相同,需要适应一下。
## 重复执行:while 循环
在程序语言当中经常会重复执行某一段程式码,这样的语法称为**循环(loop)**,其中一种循环称为**while**,语法为
“`python
while(条件):
条件成立时执行的程序代码
“`
当条件成立时执行冒号下的程序代码,一直重复执行到条件不成立时为止。条件成立时执行的程序代一样要注意代码缩排的空格数。while 循环的流程图如下:
## 程序2-2:while 的使用方法
“`python=
result = 0
i = 1
n = 10
while(i <= n):
print(“i = “, i)
result += i
i += 1
print(“result = “, result)
“`
先定义变数i、n、result 指定数值。当i <= n 时执行while 回圈中的程式码,印出i 的数值、将result 的数值+i 并重新指定给result,将i 数值+1 并重新指定给i。当while 回圈执行完之后印出文字result = 以及result 的数值。这个程式是用来计算1 + 2 + 3 + … + 10 = ? > 问题:如果想计算的是1 + 3 + 5 + 7 + 9 = ? 要怎么写呢?(提示:只要改一个地方即可。)
## 重复执行:for 循环
Python 的for 循环和其它的程式语言很不一样,比较像是用来从一串资料中依序读取当中的元素来运算,经常搭配range 或串列(list)资料一起使用。以搭配range 为例
“`python
for i in range(5):
print(i)
“`
range是用来产生数列的函式,格式为
“`python
range(起始值, 结束值, 增量)
“`
起始值预设为0,增量预设为1,但产生的数列不包含结束值。因此上面的程式码执行时,会将ragne(5) 产生的数列(0, 1, 2, 3, 4) 依序读取出来并指定给变数i,最后将印出i 的数值,因此执行结果为
“`python
0
1
2
3
4
“`
## 程序2-3:for 的使用方法
“`python=
result = 0
for i in range(1, 11):
result += i
print(“result = “, result)
“`
这个程序和程序2-2 一样是用来计算1 + 2 + 3 + … + 10 = ?
> 问题:如果想计算的是1 + 3 + 5 + 7 + 9 = ? 要怎么写呢?(提示:只要改一个地方即可。)
## 结语
Python 的功能非常多,但是我们的目标是利用VPython 做物理模拟动画,我们只需要if、while、for 再加上一些储存资料的容器就够用了,在之后的动画教学中会慢慢介绍更多不同的格式。
##