字符串
在python中,字符串可以用单引号,也可以用双引号
单引号内的引号用双引号,双引号内的引号用单引号,如下:
#正确示范
message = "One of Python's strengths is its diverse community."
#错误示范
message = 'One of Python's strengths is its diverse community.'
字符串中常用的函数
str = 'python '
#将字符串改为全部大写或全部小写
str.upper()
str.lower() #首字母大写,其余字母小写
str.title()#注意:title()函数返回标题化的字符串,即所有字母都是首字母大写,其余小写
#删除字符串末尾的空白字符
str.rstrip() #这种删除是暂时的,要想永久删除末尾的空白,必须将删除操作的结果存回原来的变量中
str = str.rstrip()
#删除字符串开头的空白字符
str.lstrip()
#删除字符串两端的空白
str.strip()
#将非字符串值表示为字符串
age = 22
message = str(age) + "years old"
#python中判断两个字符串是否相等可以直接用两个等号“==”
print(str == "animals")
Python中的运算
- 加(+ )减(- )乘(* )除(/ )
- 两个乘号表示乘方运算(**),如:32=3 ** 2
列表
可以理解为C语言里的数组
列表的定义及修改
#定义列表
animal = ['dog', 'cat', 'elephant', 'bird']
#修改列表元素
animal[0] = 'pig'
#添加元素到列表末尾
animal.append('rabbit')
#在索引2处插入元素
animal.insert(2,'rabbit')
#获取列表长度
len(animal)
#打印倒数第一个元素
print(animal[-1])
删除列表中的值
#删除列表中元素的方法有三种
#第一种:
del animal[2]#删除索引为2的元素
#第二种:
animal.pop(2)#删除索引为2的元素
poped_animal = animal.pop(2)#删除索引为2的元素,并将该元素存储在变量poped_animal中
animal.pop() #删除列表末尾的元素(相当于弹出栈顶元素)
popped_animal = animal.pop() #删除列表末尾的元素,并将该元素存储在变量poped_animal中
#第三种:
animal.remove('cat')#注意:remove()方法只是删除第一个指定的值,若列表中出现多个要删除的值,需要使用循环
想要删除列表中特定值的所有元素,可以用while循环:
pets = ['dog', 'cat', 'dog', 'goldfish', 'cat', 'rabbit', 'cat']
while 'cat' in pets:
pets.remove('cat')
列表排序
- 方法一:sort()方法
- 特点:
- 按字母顺序排列
- 永久性排序,无法恢复
animal.sort()#按字母顺序排列
animal.sort(reverse=True)#按与字母顺序相反的顺序排列
- 方法二:sorted()方法
- 特点:
- 按特定顺序显示列表元素
- 保留列表原始顺序,只是暂时排列并按照特定顺序显示出来
print(sorted(animal))
- 方法三:reverse()方法
- 特点:
- 反转列表元素的排列顺序
- 永久性排序,但可以恢复(再使用一次reverse())
animal.reverse()
遍历列表
for ani in animal:
print(ani)
#打印数字1~5(不包括5)
for value in range(1,5):
print(value)
#切片(可指定要使用的第一个元素和最后一个元素的索引
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])
#没有指定起始元素索引,则从列表开头开始提取
print(players[:4])
#没有指定结尾元素索引,则一直提取到列表结尾
print(players[2:])
print(players[-3:])#输出最后三个元素
#利用列表切片复制列表
player2 = players[:]
注意:复制列表可以利用列表切片,但是不可以直接将列表名字赋给新的变量,因为这样会导致两个列表变量指向同一个列表。
for 循环是一种遍历列表的有效方式,但在for 循环中不应修改列表,否则将导致Python难以跟踪其中的元素。要在遍历列表的同时对其进行修改,可使用while 循环。
如在列表之间移动元素:
#将unconfirmed_users中的元素移动到confirmed_users列表中
unconfirmed_users = ['alice', 'brian', 'candace']
confirmed_users = []
while unconfirmed_users:
current_user = unconfirmed_users.pop()
print("Verifying user: " + current_user.title())
confirmed_users.append(current_user)
关于range()函数
语法:
- range(1,5) #获取数值1~5(不包括5)
- range(1,10,2) #获取数值1~10,且步长为2,不包括10
ran = list(range(1,5))#将range返回的内容转化为列表
列表的简单统计函数
digits = [1,2,3,4,5,6,7,8,9,0]
min_digit = min(digits)#获取最小值
max_digit = max(digits)#获取最大值
sum_digit = sum(digits)#获取总和
#检查特定值是否包含在列表中用in
print(4 in digits)#true
print('dog' in animal)
#检查特定值是否不包含在列表中用not in(若不包含,返回true,否则返回false)
print(4 not in digits)#false
#判断列表是否为空,可以直接用列表名字,若为空,返回false,否则返回true
if animal:
print('not empty')
else:
print('empty')
列表解析
列表解析让你只需编写一行代码就能生成这样的列表。列列表表解解析析 将for 循环和创建新元素的代码合并成一行,并自动 附加新元素。
digits = [value**2 for value in range (1,11)]
元组
不可变的列表被称为元组(元素不可修改)
特点:
- 用圆括号定义而不是用方括号
- 访问元素方法与列表相同
- 虽然不能修改元素,但是可以给元组重新赋值
#定义元组
dimensions = (200,50)