Python-if-elif-else語句
阿新 • • 發佈:2018-11-02
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
Source:
[python] view plain copy print ?- #!/bin/env python
- # coding=gb2312
- # -*- coding: gb2312 -*-
- from __future__ import division
- #### if-else ####
- print '#### if-else ####'
- a = input("a: "
- b = input("b: ")
- if(a>b):
- print "max: ", a
- else:
- print "max: ", b
- #### if-elif-else ####
- print '#### if-elif-else ####'
- score = raw_input("score: ") # string
- score = int(score)
- if(score>=90) and (score<=100):
- print "A"
- elif(score>=80 and score<90):
- print "B"
- elif(score>=60 and score<80):
- print "C"
- else:
- print "D"
- #### switch I ####
- print '#### switch ####'
- x = 1
- y = 2
- operator = "/"
- result = {
- "+": x+y,
- "-": x-y,
- "*": x*y,
- "/": x/y
- }
- print result.get(operator)
- #### switch II ####
- print '#### switch II ####'
- class switch(object):
- def __init__(self, value): # init value
- self.value = value
- self.fall = False # no break, then fall=False
- def __iter__(self):
- yield self.match # match method to create
- raise StopIteration # exception to check loop
- def match(self, *args):
- if self.fall or not args:
- return True
- elif self.value in args: # successful
- self.fall = True
- return True
- else: # fail
- return False
- operator = "+"
- x = 1
- y = 2
- for case in switch(operator):
- if case('+'):
- print x+y
- break
- if case('-'):
- print x-y
- break
- if case('*'):
- print x*y
- break
- if case('/'):
- print x/y
- break
- if case():
- print 'NULL'
Result:
$ python if_else.py
#### if-else ####
a: 12 + 8
b: 30
max: 30
#### if-elif-else ####
score: 88
B
#### switch ####
0.5
#### switch II ####
3
================================================================
中文註釋參考:
一個極小的問題。在python程式碼中,用了中文註釋,不能被python直譯器理解(python 2.5)。解決方案是:
# coding=gb2312print 'ok' # 中文註釋沒問題
或者:
# -*- coding: gb2312 -*-print 'ok' #這樣也行
if-else 多種用法
#!/usr/bin/python# -*- coding:utf8 -*- ## blog.ithomer.neta, b, c = 1, 2, 3# 常規def test1(): if a>b: c = a else: c =b print c# 表示式def test2(): c = a if a>b else b print c# 二維列表def test3(): c = [b,a][a>b] print c# 黑客用法def test4(): c = (a>b and [a] or [b])[0] print cif __name__ == "__main__": test1() test2() test3() test4()
執行結果:
2
2
2
2
部落格之星評選,請投我一票:
http://vote.blog.csdn.net/blogstaritem/blogstar2013/sunboy_2050