首页 > 其他 > 详细

(04)流程控制

时间:2016-02-18 11:27:48      阅读:165      评论:0      收藏:0      [点我收藏+]

■ 继续 (\)  主要用于一行太长换行
          有两种例外情况一个语句不使用反斜线也可以跨行。在使用闭合操作符时,单一语句可以
          跨多行,例如:在含有小括号、中括号、花括号时可以多行书写。另外就是三引号包括下的字
          符串也可以跨行书写

          如果要在使用反斜线换行和使用括号元素换行作一个选择,我们推荐使用括号,这样可读
          性会更好。
         

■ if else
    if expression:
       statement(s)
    4个空格代替缩进

     if expression:
         statement(s)
     else:
         statements(s)
    
      if expression:
          statement(s)
     elif expression:
          statements(s)
     else:
          statements(s)

     条件表达 ,结合 and or not

■ for 循环
     for iteration_var in sequence:
           statements(s)

      range(i,j, 步长)  可能快速生成一个序列
  
     d={1:11,2:22}
     for k,v in d.items():
         print k
         print v
     else:                             # 正常结束会执行
         print "ending"

       for x in range(1,111):
            print x
            if x==3:
                pass      # 占位
            if x==2:
                 print "helllo"
                 continue # 跳过后面语句,进入下一次循环
             if x==5:
                exit()    终止后所有的操作
             if x==6:
                  break   # 跳出循环
             print "#"*60
          else:            #正常结事执行模块
             print "ending"

■ while 循环
       while expression:
             statement(s)

        while x!=‘q‘:
              print "hello"
              x=raw_input("please input something, q for quit:")
              if not x :
                 break
              if x=="c":
                 continue
              print "one more time ~~~~~"
          else:
                print "ending...."
   
■ switch语句
    ●python本身没有这个语句,是借助字典来完成的
      字典可以调用函数

      from __future__ import division   解决除法输入整数时,得到的结果只有整数
      def jia(x,y):
          return x+y

      def jian(x,y):
          return x-y

      def cheng(x,y):
          return x*y

      def chu(x,y):
          return x/y

      operator={"+":jia,"-":jian,"*":cheng,"/":chu}
      def f(x,o,y):
           print operator.get(o)(x,y,*args,**kwargs)
======================
简化:
      from __future__ import division
      x=1
      y=2
      operator="/"
      result={
              "+":x+y,
              "-":x-y,
              "*":x*y,
              "*":x*y,
              }
      print result.get(operator)
======================================
{1:case1,2:case2}.get(x,lambda *arg,**key:)()
======================================
提示:很多时候,可以把判断转为元组实现

(04)流程控制

原文:http://www.cnblogs.com/toby2chen/p/5197369.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!