目录
一、列表
1.1、列表的定义
代码:
classNames = ["xiaoming","xiaohong","xiaodong"]
print[classNames[0]] #获取元素1
print[classNames[1]] #获取元素2
print[classNames[2]] #获取元素3
1.2、遍历列表
代码:
classNames = ["xiaoming","xiaohong","xiaodong"]
#for循环遍历
for name in classNames:
print(name)
#while循环遍历
length = len(classNames)
i = 0
while i < length:
print(classNames[i])
i+=1
输出结果:
1.3、增删改查
classNames = ["xiaoming","xiaohong","xiaodong"]
'''
添加元素
'''
classNames.append("xiaowang") #向后添加元素
names = ["leon","ben","tina"] #定义新列表
classNames.extend(names) #将names列表添加到classNames列表中
classNames.insert(2,"susu") #指定位置前插入元素
'''
修改元素
'''
classNames[2] = "lala" #修改元素
'''
查询元素
'''
findName = "haha"
if findName in classNames : #使用in和not in 查询
print("存在此人")
else :
print("没有此人")
result = classNames.index("lala" ,0,5) #index查询
print(result)
result = classNames.count("xiaodong") #count查询
print(result)
movieName = ['加勒比海盗','骇客帝国','第一滴血','指环王','霍比特人','速度与激情']
'''
删除元素
'''
del movieName[2] #通过下标删除
movieName.pop() #从后往前删
movieName.remove("指环王") #指定名字删除
1.4、列表嵌套
classNames = [["xm","xh"],
["leon","tine"],
["A","B","C"]]
二、元组
元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号。
代码:
tuple = ("hello",100,3.18) #定义元组
print(tuple[1]) #获取元素
一旦进行修改或删除就会报异常。
三、string字符串
3.1、定义变量s,存储类型为字符串
s = "hello python"
#或者
s = 'hello python'
使用“”或‘’都可以定义字符串
3.2、字符串的下标
字符串的下标即每个字符在整串字符串的位置,例如:字符串‘data’中,字符a位于第3位。为什么不是第4位呢?这是因为下标都是从0开始记起
代码:
s = 'data'
print(s[0]) #输出字符d
print(s[1]) #输出字符a
print(s[2]) #输出字符t
print(s[3]) #输出字符a
输出结果:
当然,如果你想获取s[4]这个位置上不存在的字符时,python会报给你一个string index out of range异常。
3.3、字符串的切片
切片指对某一段字符进行截取,例如:字符串‘abcdefg’,我要截取c-e的位置,这个就是切片。切片不仅存在于字符串中,列表、元组都支持切片操作。
切片语法:【起始:结束:长度】,截取是通过下标来进行的,值得注意的是结束的下标不包含当前位。
代码:
s = "abcdefg"
print(s[0:5]) #截取下标为0~5的元素
输出结果:
由此可以看出下标为5的字符,也就是"f"并没有被输出,因为不包含当前位,数学上似乎叫左闭右开区间。还有其他的一些字符截取的方式。
代码:
s = "abcdefg"
print(s[1:-1]) #取下标为1到下标为倒数第2位的区间
print(s[1:5:2]) #取下标为1~4的区间,取2位
print(s[:3]) #从下标0开始到下标2的区间
print(s[::2]) #下标按照0,2,4,6,8...的取,似乎是递增取值
输出结果:
反转字符串“abcdefg”
代码:
s = "abcdefg"
i = -1
rever = ""
while i >= -s.__len__():
rever += s[i]
i -= 1
print(rever)
输出结果:
3.4、字符串常见的操作
- find、index、upper等很多方法,太多不再此处列举,等用到的时候再去查询。具体可以找找python的文档看看就会使用了。
- 下面给出部分字符串操作的代码:
-
movieNames = '加勒比海盗骇客帝国第一滴血指环王霍比特人速度与激情' #find查询字符串是否存在,存在返回第一个字符的下标,不存在返回-1 movieNames.find("第一滴血") movieNames.find("第一滴血",0,5) #index的用法和find类似,只不过index查不到会报异常而不是返回-1 movieNames.index("第一滴血") movieNames.index("第一滴血",0,20) #count是查询字符串出现的次数 movieNames.count("一") movieNames.count("一",0,20) #replace是替换字符串 movieNames.replace("一","二") movieNames.replace("一","二",1) #如果指定替换次数,则不会超过指定的次数 ...
四、字符串格式化
字符串格式化是为了简化程序,例如:
pirnt("我今年10岁")
pirnt("我今年11岁")
pirnt("我今年12岁")
....
使用了字符串格式化后,代码如下:
age = 10
while age <= 20 :
print("我今年%d岁" % age)
age += 1