第三节:条件与循环

一、if语句

  注意两点,一是缩进,Python是用缩进来标识出哪一段属于本循环。,二是条件后面有冒号:

In [1]:
j=2.67
if j<3:
    print('j<3')
j<3

比较运算符:
< > <= >= == !=
逻辑运算符
and or not
逻辑表达式

In [3]:
a=2
b=3
a!=b
Out[3]:
True
In [16]:
a=True
b=False
c=False
d=True
a and (b or c) and d
Out[16]:
False

  对于多条件,要写成elif,标准格式为:

   if 条件1:
    执行语句1
   elif 条件2:
    执行语句2
   else:
    执行语句3

  注意if…elif…else三个是并列的,不能有缩进:

input输入函数
注意:输入变量为字符串

In [2]:
n=input("请输入一个数字")
type(n)
请输入一个数字10
Out[2]:
str
In [2]:
t=3
if t<3:
    print('t<3')
elif t==3:
    print('t=3')
else:
    print('t>3') 
t=3

完成例子:
输入一个数字,判断是小于3、大于等于3且小等于5、大于5小于等于10,还是大于10

In [ ]:
 

完成例子:
执行价格是10的标的是股票的欧式看涨期权。
请输入现在标的股票的现价,判断期权现在是实值(in the money)、平价(at the money)还是虚值(out of the money)

In [ ]:
 

随机函数的使用,多运行几次看看结果:

import random
random.randint(1,6)
In [13]:
import random
random.randint(1,6)
Out[13]:
3

完成例子:
掷筛子赌大小
同时掷3个筛子,得到随机结果
用input来下注,然后判断输赢情况

In [ ]:
 

二、while true/break语句

  该语句的格式为

   while true即条件为真:
    执行语句
    if中断语句条件 : break

  看个例子:

In [4]:
a=3
while a<10:
    a=a+1
    print(a)
    if a==8: break
4
5
6
7
8

  虽然while后面的条件是a < 10,即a小于10的时候一直执行,但是if条件中规定了a为8时就break掉,因此,输出只能输到8。

完成例子:
1+3+5+...+99=?

In [ ]:
 

完成例子:
numsum=1+3+....?>=10000

In [ ]:
 

三、for语句

  可以遍历一个序列/字典等。

In [5]:
a=[1,2,3,4,5]
for i in a:
    print(i)
1
2
3
4
5

完成例子:
求2..100 质数和 伪代码提示:

大循环2..100

#大循环当前数A
#小循环2..A-1
    #小循环当前数B
        #如果A能被B整除
            #A不是质数
            #跳出小循环
#如果A是质数
    #打印A
In [ ]: