python语句 3.22

14 篇文章 0 订阅

1.if语句(思想与大多数编程语言类似,形式有区别)

(1)if语句的完整形式就是

 if <条件判断1>:

     <执行1>

 elif <条件判断2>:

     <执行2>

 else:

     <执行3>

判定条件实际上最终是得到一个布尔值,即True False

(2)if语句判定条件可分为4种:

   布尔表达式

   比较表达式

   逻辑运算

   

    身份、成员运算
    成员运算和身份运算 in is in 放到两个对象中间的含义是,测试前者是否存在于 in 后面的数据集合 中;
   

   is 操作符就是用来进行身份对比的:

   例如:>>>li= [1, 2, 3, 4]

            >>> 2 in li

            True

    python中的三元运算符: >>>x=4,y=5   

                                          >>>smaller= x if x < y else y

2.for语句(思想与大多数编程语言类似,形式有区别,写完后加一个空行)

  Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,for.....in结构可以遍历序列或类序列类型:字符串、列表、元组、字典、文件,例如:

 

比如我们计算1-10的整数之和,可以用一个sum变量做累加

  sum = 0

  forx in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:

          sum = sum + x

  print sum

可以使用range()函数,生成一个整数序列,再通过list()函数可以转换为list

range(start,end, step =1)

python中for也支持嵌套使用

3.while语句(使用思想与大多数编程语言类似,只是形式不同)

>>>count= 0

>>>while (count < 9):

...  print 'the index is:', count

...  count += 1

4.控制语句:break(跳出整个循环)、continue(跳出本次循环)、pass(pass 不做任何事情,一般用做占位语句)


5.迭代器:   for 循环会访问一个可迭代对象(例如序列或是迭代器)中的所有元素, 并在所有条目都处理过后结束循环.

迭代是一组数据结构,你可以利用它们的索引从0 开始一直"迭代" 到序列的最后一个条目,比如:通过for循环来遍历list,这种遍历我们称为迭代(Iteration

迭代器可以迭代不是序列但表现出序列行为的对象, 例如字典的 keys , 个文件行等 “类”序列sequence-like object)对象

迭代器就是有一个next()方法的对象, 而不是通过索引来计数.用户或是一个循环(例如 for)需要下一个项时, 调用迭代器的 next() 方法就可以获得它

比如,在整理表格或文件时,需要按照字母或日期进行排序,在python中:

>>>Li =[6, 2, 8, 4, 1, 3]

>>>for i in sorted(Li):

...  print i,

输出

使用默认参数reverse后列表可以按照逆序整理:

>>>sorted(Li,reverse=True)

在整理列表的过程中,如果同时需要2个或多个列表该怎么办?这时候可以用到zip函数

比如

  fora, binzip(nums, strs):

      print b, 'is', a

列表是有序的,可以使用Python中独有的函数enumerate来进行


6.列表解析式(推导式)

列表添加10个元素(传统方法)

a= []

 for i in range(1, 11):

       a.append(i)

列表解析式方法

b= [iforiin range(1, 11)]

for循环后面还可以加上if判断,这样就可以筛选出符合条件的元素,比如选择偶数:

  c = [for in range(1, 11,) if i % 2 == 0]

列表解析式的用法也很好理解,可以简单看作两部分



字典解析式:


>>>res  = [x+yfor x in [0,1,2] for y in [100,200,300]]

>>>res


列表解析+矩阵

矩阵:(也被称为多维数组)的一个基本的方法就是使用嵌套列表结构,如下

>>> m = [[1,2,3],

    [4,5,6],

    [7,8,9]]

>>> n =[[2,2,2],[3,3,3],[4,4,4]

使用这样的结构,我们总能索引行,以及索引行中的列

遍历某一列

>>> [m[row][1] for row in (0, 1, 2)]

遍历对角线

>>> [m[i][i] for i in range(len(m))]

遍历每一个元素

>>> [m[row][col]for row in range(3) for col in range(3)] 

m+ n组成的新矩阵

>>> [m[row][col]+n[row][col] for row in range(3) forcol in range(3)]

m*n组成的新矩阵

>>>[[m[row][col]*n[row][col] for row in range(3)] for col in range(3)]

 













  


   



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值