接上文ruby基础语法,为在切换语言时查看,迅速习惯写法,记录了一些基本语法,代码在这里。
# -*- coding: utf-8 -*- ''' 参考:http://www.runoob.com/python/python-tutorial.html 多行注释 多行注释 ''' ##变量 a = 100#变量直接声明即可 a = "abc"#变量弱类型 l = [1, 2, 3]#数组,可以赋值和取值l[0] t = (1, 2, 3)#元组,不能赋值,只能取值t[0] d = {"a" : 1, "b" : 2}#字典,可以赋值取值d["a"] s = str(1)#数据类型转化 ##流程控制 #if if 1 > 2: pass#啥也不想干,pass用来占位,否则语法不成立 elif 1 > 3: pass else: pass #while while 1 > 2: pass else: pass #for for i in [1,2,3]: #这里可以使用break和continue pass else: pass ##面向对象 #定义函数 def log(str): return str.decode("utf-8").encode("gbk") #定义类 class MyClass: #成员变量 _privateAttr = "私有变量值"#下划线开头为私有变量 myAttr = "公有变量值"#公有变量 #构造函数 def __init__(self, a): self.myAttr = a self._privateAttr = a #成员方法,第一个参数必须是self,这体现了myObj.myMethod(..)实际是myMethod(myObj, ..) def myMethod(self): print log(self.myAttr + self._privateAttr) #继承 class MySubClass(MyClass): def __init__(self, a): self.myAttr = a + "在子类中变了" myObj = MySubClass("你好,世界!")#实例化,不需要new关键字 myObj.myMethod() #使用其他模块中定义的类 from python_another_module import AnotherClass AnotherClass().anotherMethod() ##异常 try:#这里写正常语句 pass except Error:#如果捕获了该类异常则运行 pass else:#如果没捕获异常则运行 pass ##正则表达式 import re #匹配 m = re.match(r'D+(d+)D+(d+)', "ab12cd34") if m: print m.group(0)#ab12cd34 print m.group(1)#12 print m.group(2)#34 else: print "no match" #替换 print re.sub(r'd', "!", "ab12cd34")#ab!!cd!! print re.sub(r'd+', "!", "ab12cd34")#ab!cd!