1.Python的三种排序方式
sort()函数
格式1:列表.sort()升序排序
格式2:列表.sort(reverse=True)降序排序
格式3:列表.reverse反转排序
范例代码:
list1 = [91, 95, 97, 99, 92, 93, 96, 98]
list1.sort()
print(list1)
[91, 92, 93, 95, 96, 97, 98, 99]
list1.sort(reverse=True)
print(list1)
[99, 98, 97, 96, 95, 93, 92, 91]
list1 = [91, 95, 97, 99, 92, 93, 96, 98]
list1.reverse()
print (list1)
[98, 96, 93, 92, 99, 97, 95, 91]
2.range()函数
格式:range(a,b,c),#从a数到b-1,数的间隔为c
当 a=0 时可省略为range(b,c)
当默认 c=1 时可省略为range(a,b)
通常与for循环配合使用
作用相当于生成一个长度为b的列表list1 = [a,a+1,a+2…b-1]
范例代码:
for i in range(0,10,3):
print(i)
输出:
0
3
6
9
3.bool()函数:
格式:bool(参数)
代码范例:
print(‘以下数据判断结果都是【假】:’)
print(bool(False))
print(bool(0))
print(bool(’’))
print(bool(None))
print(‘以下数据判断结果都是【真】:’)
print(bool(True))
4.and 语句
格式:语句1 and 语句2
返回值:
0 and 0 == 0
0 and 1 == 0
1 and 0 == 0
1 and 1 == 1
5.or 语句
格式: 语句1 or 语句2
返回值:
0 or 0 == 0
0 or 1 == 1
1 or 0 == 1
1 or 1 == 1
6.not 语句
格式: not 语句
返回值:
not 0 == 1
not 1 == 0
7.in 语句 / not in 语句
格式: 参数 (not) in 语句
返回值:
代码范例:
a = [0,1]
0 in a
True
1 not in a
False
8.代码规范:格式化字符串
格式:’%s %d %f’% (‘字符串’,整型参数,浮点型参数)
注意和字典类似,无序,位置、类型唯一对应
范例代码:
lucky = 8
print(‘我的幸运数字是%d’ % lucky)
我的幸运数字是8
print(‘我的幸运数字是%d’ % 8)
我的幸运数字是8
print(‘我的幸运数字是%s’ % ‘小龙女的生日816’)
我的幸运数字是小龙女的生日816
print(‘我的幸运数字是%d和%d’ % (8,16))
我的幸运数字是8和16
9.format()函数
格式:’…{}…{}…’.format(元素1,元素2…)
范例代码:
print(’\n{}{}’.format(‘数字:’,0)) #优势1:不用担心用错类型码。
print(’{},{}’.format(0,1)) #不设置指定位置时,默认按顺序对应。
print(’{1},{0}’.format(0,1)) #优势2:当设置指定位置时,按指定的对应。
print(’{0},{1},{0}’.format(0,1)) #优势3:可多次调用format后的数据。
name2 = ‘Python基础语法’
print(‘我正在学{}’.format(name2)) # format()函数也接受通过参数传入数据。
知识1:一种新的列表生成方式
num1 = [1,2,3,4,5] # 想一想,如果用这个方法生成一个1-100的列表……
num2 = list(range(1,6))
print(num1)
print(num2)
知识2:extend 的新用法
num2.extend([‘ABCDE’])
num2.extend(‘ABCDE’) # extend后面是列表的话会将其合并,后面是字符串的话会将每个字符当成一个列表中的元素。
print(num2)
知识点3:列表生成式
list1 = [i for i in range(3)] # 规定列表中元素的范围
print(list1)
list2 = [m+n for m in [‘天字’, ‘地字’] for n in ‘一二’] # 列表元素可以是组合,分别规定范围。
print(list2)
list3 = [n*n for n in range(1,11) if n % 3 == 0] # 元素既可规定范围,也可附加条件。
print(list3)
10.join()函数
语法: ‘sep’.join(seq)
参数说明
sep:分隔符。可以为空
seq:要连接的元素序列、字符串、元组、字典
上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串
#列表、元组可得到相同结果(可理解为去掉括号,用分隔符分隔每个元素)
#字典操作后得到的是 键(舍弃值)
#字符串操作后得到的是每个单字符
返回值:返回一个以分隔符sep连接各个元素后生成的字符串
范例代码:
#对序列进行操作(分别使用’ ‘与’:'作为分隔符)
seq1 = [‘hello’,‘good’,‘boy’,‘doiido’]
print ’ '.join(seq1)
hello good boy doiido
print ‘:’.join(seq1)
hello:good👦doiido
#对字符串进行操作
seq2 = “hello good boy doiido”
print ‘:’.join(seq2)
h:e:l:l⭕️ :g⭕️o:d: 🅱️o:y: :d⭕️i:i:d:o
#对元组进行操作
seq3 = (‘hello’,‘good’,‘boy’,‘doiido’)
print ‘:’.join(seq3)
hello:good👦doiido
#对字典进行操作
seq4 = {‘hello’:1,‘good’:2,‘boy’:3,‘doiido’:4}
print ‘:’.join(seq4)
boy:good:doiido:hello
11.index()函数
格式:list.index(obj),obj为object(对象)的缩写
描述:index() 函数用于找出列表中某个元素第一次出现的索引位置
具体可参考代码和运行结果。
范例代码:
num = [0,1,0,1,2]
print(num.index(1)) # 数字1首先出现的索引位置是list[1](索引位置从0开始)。
print(num.index(2)) # 数字2首先出现的索引位置是list[4]。
1
4
12.try语法:
try:
执行命令(大部分情况是用户输入)
except 报错类型1:
except 报错类型2:
报错类型有:
1.精确报错:ZeroDivisionError、ValueError、TypeError、
2.精确报错(多项):(报错类型1,报错类型2…)
3.模糊报错:Exception
范例代码1:
num = [1,2,0,3,1.5,‘6’]
for x in num:
try: # 尝试执行下列代码
print (6/x)
except ZeroDivisionError:
print('0是不能做除数的!')
except TypeError:
当报错信息为TypeError,执行下面的语句。
print('被除数必须是整值或浮点数!')
范例代码2:
print(’\n欢迎使用除法计算器!\n’)
while True:
try:
x = input('请你输入被除数:')
y = input('请你输入除数:')
z = float(x)/float(y)
print(x,'/',y,'=',z)
break # 默认每次只计算一次,所以在这里写了 break。
except ZeroDivisionError: # 当除数为0时,跳出提示,重新输入。
print('0是不能做除数的!')
except ValueError: # 当除数或被除数中有一个无法转换成浮点数时,跳出提示,重新输入。
print('除数和被除数都应该是整值或浮点数!')
# 方式2:将两个(或多个)异常放在一起,只要触发其中一个,就执行所包含的代码。
# except(ZeroDivisionError,ValueError):
# print('你的输入有误,请重新输入!')
# 方式3:常规错误的基类,假设不想提供很精细的提示,可以用这个语句响应常规错误。
# except Exception:
# print('你的输入有误,请重新输入!')