参考网站 https://www.runoob.com/python/python-strings.html
在线编程网址
字符串
split
#!/usr/bin/python3
str="123:456:789"
print(str.split(':',1)[1])
print(str.split(':',2)[1])
print(str.split(':',2))
print(str.split(':',1))
输出结果为:
456:789
456
['123', '456', '789']
['123', '456:789']
s.split(‘r’, num)根据“r” 将字符串分割为 num+1 份,返回一个字符串数组;
list,元组,字典的访问
元组:
用小括号()括起来
tup1 = (1,2,‘happy’,33,‘nihao’)
- 访问:
例如: tup1[0] // 1
list:
用中括号[]括起来
list1=[1,2,‘nice’,22,‘haha’]
- 访问:
例如:list1[1] 取值为2
字典:
用花括号{}括起来
m = {‘k1’:1,‘k2’:2,100:55}
- 访问:
方式1: m[‘k1’] // 1
方式2: m.get(‘k1’) // 1
tup1 = (1,2,'happy',33,'nihao')
print(tup1[1])
list1=[1,2,'nice',22,'haha']
print(list1[2])
m = {'k1':1,'k2':2,100:55}
print(m['k1'])
输出结果
2
nice
1
可以动态改变list,但是元组不能改变, tup1[1] = 222会报错
list1[1]='hell0'
print(list1[1]) //由1改为 hello
小结:
python 是动态语言,其list, 元组, map 和其他语言如c语言,java语言相似,不同点在于python不要求 其元素类型一致。
面向对象
#!/usr/bin/python
# -*- coding: UTF-8 -*-
class Parent: # 定义父类
parentAttr = 100
def __init__(self):
print "调用父类构造函数"
def parentMethod(self):
print '调用父类方法'
def setAttr(self, attr):
Parent.parentAttr = attr
def getAttr(self):
print "父类属性 :", Parent.parentAttr
class Child(Parent): # 定义子类
def __init__(self):
print "调用子类构造方法"
def childMethod(self):
print '调用子类方法'
c = Child() # 实例化子类
c.childMethod() # 调用子类的方法
c.parentMethod() # 调用父类方法
c.setAttr(200) # 再次调用父类的方法 - 设置属性值
c.getAttr() # 再次调用父类的方法 - 获取属性值
输出结果
调用子类构造方法
调用子类方法
调用父类方法
父类属性 : 200
可以多继承
class A: # 定义类 A
…
class B: # 定义类 B
…
class C(A, B): # 继承类 A 和 B
…
直接重写父类方法
#!/usr/bin/python
# -*- coding: UTF-8 -*-
class Parent: # 定义父类
def myMethod(self):
print '调用父类方法'
class Child(Parent): # 定义子类
def myMethod(self):
print '调用子类方法'
c = Child() # 子类实例
c.myMethod() # 子类调用重写方法