今天继续学习了字符串
python这种动态语言,可以根据操作数的类型判断要执行的操作
字符串
+(加号)可以用于做加法、字符串连接
*(乘号)可以用于做乘法以及重复输出字符串
>>>String1 = "Hello"
>>>String2 = "World"
>>>String1 + String
>>>HelloWrold
//当String1与String2均为字符串类型时才可以进行操作
>>>String = "nihao"
>>>String * 3
>>>nihaonihaonihao
//当字符串类型+数字类型时才可以进行操作
分区
正数做字符串的索引
>>>String = "HelloWorld"
>>>String [x1:x2:x3]
//x只能为整数 x1代表从父字符串哪个开始,x2代表结束字符串的后一个,x3代表x3-1个字符为间隔
eg:Sting [2:8:2]
>>>loo
如图
负数也可以用于做字符串的索引
-1代表最后一个元素,-2代表倒数第二个元素,递推…
>>>String = "HelloWorld"
>>>String[-1]
>>>d
序列
List
一个List里可包含不同类型的元素
获取元素的方法和在字符串中获取元素的方法相同。
List可以是可变的有序列表
1)可以末尾追加元素
>>>classmate = ["xiaoming","xiaofang","xiaoli","xiaoxiao"]
>>>classmate.append("xiaoda")
2)在中间插入元素
>>>classmate.insert(3,"xiaoen") //在序列号为3的位置添加元素"xiaoen"
3)删除末尾元素
>>>classmate.pop()
4)删除任意位置元素
>>>classmate.pop(i)//i为位置
5)直接替换元素
>>>classmate[i] = "replace" //i为位置
6)List中还可以写List
>>>workmate = ["no1","no2",["no21","no22"],"no3"]
6)List中还可以写List
>>>workmate = ["no1","no2",["no21","no22"],"no3"]
7)List中也可以一个元素都没有
>>>L[]
>>>len(L)
>>>0
7)List中也可以一个元素都没有
>>>L[]
>>>len(L)
>>>0
Tuple
也是一种元组类型,与List类似,一旦初始化就不能修改,不可变,更安全。
定义方式为
>>>tuple1 = ("no1","no2","no3")
当tuple初始化只含一个元素时,要在元素后面添加括号,不然会产生歧义(其实这里有点没懂?什么歧义)
>>>tuple1 = (1,)
获取元素等方法都一样,但是不能在任何位置新增/修改元素,但可以修改在tuple中的List
>>>tuple2 = ("no1","no2",["no1","no2"],"no3")
>>>tuple2[2][0] = "newno1"
>>>tuple2
>>>('no1', 'no2', ['newno1', 'no2'], 'no3')
在使用过程中,能用tuple就用tuple
有点如下:性能更高,更安全,不易被篡改等。后面学习过程中会继续补充,现在自己还不太了解。
字符串补充
str 为不变对象,
例
>>>a = "HELLO"
>>>a.replace("H","h")
>>>'hELLO'
>>>a
>>>'HEELO'
要这样想,a是一个变量,这个变量指向’HELLO’这个内容,它是不会改变的;
那么a.raplace()这个方法实际上是创建了另外一个变量x,它指向’hELLO’这个内容,那么会输出’hELLO’这个内容。
实际上这段代码是创建了两个变量。其内容各不相同。