.Net程序员之Python基础教程学习----判断条件与循环[Fourth Day]

时间:2020-12-14 13:46:51

      今天学习Python的判断条件与循环操作。

   一. 布尔变量:

     在学习判断条件之前必须的了解bool变量,在Python中bool变量与C语言比较类似,与.net差别比较大,其中下面集中情况需要记住。

     False, '', 0, (), [],{},None 为空,而True,12,'hello',[1] 这些普遍都为真. 其实可以简单理解为,无即是false,有既是true

    

>>> bool(True)
True
>>> bool()
False
>>> bool()
True
>>> bool('')
False
>>> bool('')
True
>>> bool([])
False

    二. IF  的使用.

    

     Note: if后面用:号隔开,相当于C#和C语言的{} 对于包含的代码段用间隔号隔开。比如第三行 print '未成年人'  是if(age<18)的子方法,那么就要在前面空出几个空格.

age =
if(age<):
print '未成年人'
elif(age<):
print '成年人'
else:
print '老年人' 输出:'成年人'

    

age =
if(age<):
if(age>):
print '成年人'

三. While的使用:

x =
while x<=:
print x
x+=

四. For 用法:

  

names = ['Frank','Loch','Vincent','Cain']
for name in names:
print name

五.断言的使用: 断言主要用于测试的时候。如果断言不通过将会报错.

>>> age =
>>> assert age<
>>> assert age< # 第一个断言通过了。第二个断言没有通过,所以报错了。
Traceback (most recent call last):
File "<pyshell#23>", line , in <module>
assert age<
AssertionError

六. 综合运用。
            1. 下面有一个列表取出列表中的数字:

    

myList = ['Frank','Bob',,,]
for val in myList:
if(type(val) is int): #type获取一个值得类型.
print val
输出结果是:

2. 打印出杨辉三角形: 10层的杨辉三角形,先声明一个二维数组,由于不能像C语言或者C++使用for(int index;index<10;index++),我选择了使用while的双层循环

    

rowIndex =
columnIndex =
myList = [[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,],[,,,,,,,,,]]
print myList
print(myList[][])
while rowIndex < :
while columnIndex <= rowIndex:
if(rowIndex==):
myList[][]=
myList[][]=
else:
if(columnIndex==rowIndex):
myList[rowIndex][columnIndex]=
else:
myList[rowIndex][columnIndex]=myList[rowIndex-][columnIndex-]+myList[rowIndex-][columnIndex]
columnIndex+=
columnIndex=
rowIndex+= line = ''
for row in myList:
for val in row:
if(val!= ):
line = line + str(val)+' '
print line
line='' 运行结果:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1