2020-11-30
title()
方法可以以首字母大写的方式显示每个单词。
upper()
方法大写输出
lower()
小写输出
+
合并字符串
rstrip()
去除字符串末尾空格
lstrip()
去除开头空格
strip()
去除两端空格
\t
制表符
\n
换行符
python将带小数点的数字都称为浮点数
在进行字符拼接的时候,如果需要使用数字,可以使用str()
函数来将数字转化成字符串。例如:
age = 23
message = "happy" + age + " rd brithday"
print(message)
将会报错,因为python无法理解23是整数还是2和3的字符,所以可以将第二句代码改为
message = "happy" + str(age) + " rd brithday"
python之禅:import this
a = ["bicycle", "bus", "car"]
print(a[1].title())
print(a[-1].title())
Bus
Car
将索引指定为-1
可以让python返回列表的最后一个元素,-2返回倒数第二个元素,以此类推。
2020-12-01
a[1] = "motorcycle"
:修改任意位置元素
a.insert(0, "subway")
:在任意位置插入元素
del a[0]
:删除任意位置元素
a.append("plane")
: 在末尾追加元素
方法pop()
可以删除列表末尾元素,并让你能够接着使用它。
a = ["bicycle", "bus", "car"]
popped = a.pop()
print(a)
print("The last one is " + popped.title())
['bicycle', 'bus']
The last one is Car
pop()
方法也可以删除列表任何位置的元素,只需要在括号中指定索引即可。
如果删除一个元素并且不再使用,就用del
关键字,否则用pop()
方法。
如果不知道从列表中删除的值的位置,只知道要删除的值,那么就可以使用remove()
方法。
a.remove("bus")
使用remove()删除元素时,也可以接着使用它的值。
too_expensive = "plane"
a.remove(too_expensive)
print(a)
print("\nA" + too_expensive.title() + "is too expensive for me.")
被删除的变量仍然存储在too_expensive 中,因此可以继续使用。
在句子开头加"\n"可以在前面插入一个空行
del pop() remove()
sort()
方法可以对列表进行永久排序
a.sort()
:正序排序
a.sort(reverse = True)
:逆序排序
函数sorted()
可以对列表进行暂时排序,并不影响列表原始顺序。
a = ["bicycle", "plane", "car"]
print(sorted(a))
print(a)
a.sort(reverse = True)
print(a)
['bicycle', 'car', 'plane']
['bicycle', 'plane', 'car']
['plane', 'car', 'bicycle']
注意一个是方法一个是函数,调用方法不一样。
reverse()
方法可以反转列列表元素的排列顺序。注意,此处的reverse()方法,不是指按字母顺序相反的顺序排列元素,而是翻转列表元素排列顺序。要与sort()
方法区分开。
len()
函数可以获取列表长度。
len(a)
编写for
循环时,对于用于存储列表中每个值的临时变量,可以指定任何名称,在循环内部可以使用这个临时变量。在循环外部,变量中记录的将会是列表中最后一个元素的值
magicians = ["han", "zhang", "li"]
for magician in magicians:
print("%s,你的表演太好了" % magician.title())
print("\n" + magician.title() + "我们期待下一次")
Han,你的表演太好了
Zhang,你的表演太好了
Li,你的表演太好了
Li我们期待下一次
函数range()
可以生成一系列数字:
for value in range(1, 5):
print(value)
1
2
3
4
使用函数list()
可以将range()
的结果转化为列表。
numbers = list(range(1, 5))
print(numbers)
[1, 2, 3, 4]
使用range()还可以指定步长:
even_numbers = list(range(2, 11, 2))
print(even_numbers)
[2, 4, 6, 8, 10]
从2开始数,步长为2, <= 11。
小案例:
square = []
for number in range(1, 11):
square.append(number ** 2)
print(square)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
几个常用函数:
min()
: 找出最小值
max()
: 找出最大值
sum()
: 求和
列表解析:
squares = [value ** 2 for value in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
使用列表的一部分:
切片
numbers = list(range(1, 11))
print(numbers[1:3])
[2, 3]
注意用的是冒号。
如果缺省第一个索引,则从头开始numbers[:3]
,如果缺省后一个索引,则一直检索的列表最后一个值。
检索最后三个值:
print(numbers[-3 :])
遍历切片:
for player in players[:3]:
print(player.title())
复制列表:
a = [1, 2, 3]
b = a[:]
这个时候a增加一个值,b不会增加。而使用赋值语句就不能达到上面的效果:
a = [1, 2, 3]
b = a
这时候b和a指向同一个列表,当a中增加一个值的时候,b同样跟着增加。