欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-10-18 18:26:55
 今天学习Python的判断条件与循环操作。      一. 布尔变量:        在学习判断条件之前必须的了解bool变量,在Pytho...
 今天学习Python的判断条件与循环操作。

 

   一. 布尔变量:

 

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

 

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

 

    

 

 

>>> bool(True)

True

>>> bool(0)

False

>>> bool(1)

True

>>> bool('')

False

>>> bool('123')

True

>>> bool([])

 

    二. IF  的使用.

 

    

 

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

 

age = 18

if(age<18):

    print '未成年人'

elif(age<50):

    print '成年人'

else:

    print '老年人'

 

输出:'成年人'

 

    

 

age = 20

if(age<50):

    if(age>18):

        print '成年人'

  三. While的使用:        

 

x = 1

while x<=100:

    print x

    x+=1

        四. For 用法:

 

  

 

names = ['Frank','Loch','Vincent','Cain']

for name in names:

    print name

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

            

 

 

>>> age = 10

>>> assert age<20

>>> assert age<9   # 第一个断言通过了。第二个断言没有通过,所以报错了。

Traceback (most recent call last):

  File "<pyshell#23>", line 1, in <module>

    assert age<9

AssertionError

 

        六. 综合运用。

            1. 下面有一个列表取出列表中的数字:

 

    

 

 

myList = ['Frank','Bob',123,456,789]

for val in myList:

    if(type(val) is int):   #type获取一个值得类型.

        print val

输出结果是:

123

456

789 

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

 

    

 

 

rowIndex = 1

columnIndex = 0

myList = [[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0],[1,0,0,0,0,0,0,0,0,0]]

print myList

print(myList[9][9])

while rowIndex < 10:

    while columnIndex <= rowIndex:

       if(rowIndex==1):

           myList[1][0]=1

           myList[1][1]=1

       else:

           if(columnIndex==rowIndex):

               myList[rowIndex][columnIndex]=1

           else:

               myList[rowIndex][columnIndex]=myList[rowIndex-1][columnIndex-1]+myList[rowIndex-1][columnIndex]

       columnIndex+=1

    columnIndex=0

    rowIndex+=1

 

line = ''

for row in myList:

    for val in row:

        if(val!= 0):

           line = line + str(val)+' '

    print line

    line=''

 

运行结果:

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 

复制代码