python流程控制 - ChannelCMT/OFO GitHub Wiki

4_Python流程控制

条件语句/循环语句/循环控制语句

1、 Python 条件语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

Python 编程中 if 语句用于控制程序的执行,基本形式为:

if 判断条件:

执行语句……

else:

执行语句……
Stocks = ['APPLE', 'BABA']

if 'APPLE' in Stocks:
    print('Stocks has APPLE')
else:
    print('Stocks has not APPLE')
Stocks has APPLE
if 'TENCENT' in Stocks:
    print('Stocks has TENCENT')
elif 'SBUX' in Stocks:
    print('Stocks has SBUX')
else:
    print('Stocks has not TENCENT and SBUX')
Stocks has not TENCENT and SBUX

2、 Python循环语句

while

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件:

执行语句……
count = 0

while count<6:
    print(count)
    count+=1
print('over')
0
1
2
3
4
5
over

for

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

l = [0,1,2,3,4,5]

for i in l:
    print(i)
print('over')
0
1
2
3
4
5
over
for i in range(6):
    print(i)
    
print('over')
0
1
2
3
4
5
over
for s in 'Channel':
    print(s)
print('over')
C
h
a
n
n
e
l
over
d = {'a':1, 'b':2}

for k in d:
    print(k,':', d[k])
a : 1
b : 2

麦肯锡面试题目

题目:如何用一行代码将输入[True,False,False,True,True],输出为[0,3,4]。

TFL = [True,False,False,True,True]

l = []

for tf in range(len(TFL)):
    if TFL[tf]==True:
        l.append(tf)
print(l)
[0, 3, 4]
[tf for tf in range(len(TFL)) if TFL[tf]==True]
[0, 3, 4]

Python 循环嵌套

Python 语言允许在一个循环体里面嵌入另一个循环。

题目: 输出[1,3,5]不重复的所有数的组合

l = [1,3,5]
for i in l:
    for j in l:
        for k in l:
            if (i!=j) and (i!=k) and (j!=k):
                print(i,j,k)
1 3 5
1 5 3
3 1 5
3 5 1
5 1 3
5 3 1

3、 循环控制语句(break、 continue、 pass)

终止break

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。

s = 'QauntitativeTrader'

for i in s:
    if i =='i':
        break
    print(i)
Q
a
u
n
t

跳过continue

continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。

for i in s:
    if i =='i':
        continue
    print(i)
Q
a
u
n
t
t
a
t
v
e
T
r
a
d
e
r

pass 标明但不跳过

Python pass是空语句,是为了保持程序结构的完整性。

for i in s:
    if i =='i':
        pass
        print('run pass')
    print(i)
Q
a
u
n
t
run pass
i
t
a
t
run pass
i
v
e
T
r
a
d
e
r