1.集合的创建方式------set()
2.字典创建方式 -------{}, dict()
3.定义一个具有重复元素的列表,如何快速去重(能否一行代码实现)
-----列表转集合, 然后集合转列表
4.数字重复统计:
-------1) 随机生成1000个整数
-------2) 数字范围[20,100]
-------3) 升序(列表临时排序sorted(排序列表))输出所有不同的数字及其每个数字的重复次数
import random
my_dict = {} # 统计次数
my_list = [] # 放生成数据
# 数据生成
for i in range(10000):
a = random.randint(20, 50) # 包含50
my_list.append(a)
# 排序
# my_list.sort()
print(my_list)
my_list = sorted(my_list)
# 统计
for b in range(20, 51):
my_dict[b] = my_list.count(b)
print('数据统计'.center(40, '-'))
# 输出
for key in my_dict:
print(f"{key}出现次数:{my_dict[key]}")
5.九九乘法表打出来
----------(# 扩展:print('{}x{}={}\t'.format(1, 2, 3), end='1') end可在打印数据前进行相关操作)
for i in range(1, 10):
for j in range(1, i+1):
print('{}x{}={}\t'.format(j, i, i*j), end='')
print() # 换行
# 一行搞定
print('\n'.join([' '.join(['%s*%s=%-2s' %(y,x,x*y)for y in range(1,x+1)])for x in range(1,10)]))
一.常见公共方法
1.运算符
运算符 | Python 表达式 | 结果 | 描述 | 支持的数据类型 |
---|---|---|---|---|
+ | [1, 2] + [3, 4] | [1, 2, 3, 4] | 合并 | 字符串、列表、元组 |
* | ‘Hi!’ * 4 | [‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’] | 复制 | 字符串、列表、元组 |
in | 3 in (1, 2, 3) | True | 元素是否存在 | 字符串、列表、元组、字典 |
not in | 4 not in (1, 2, 3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |
-
in
str_1 = '我爱学习python!' for i in range(2): str_2 = input('请输入:') if str_2 in str_1: print('在') elif str_2 not in str_1: print('不在')
注意,in在对字典操作时,判断的是字典的键而不是值
2.常见内置函数
函数名 | 描述 |
---|---|
len(item) | 计算容器中元素个数 |
max(item) | 返回容器中元素最大值 |
min(item) | 返回容器中元素最小值 |
del(item) | 删除变量 |
list_1 = [0,1,2,3,4,5,6,7,8,9]
print(len(list_1))
print(max(list_1))
print(min(list_1))
#del()函数由两种用法
del(list_1)
del list_1
-
序列解包
x,y,z = 1,2,3
-
链式赋值
x = y = z = 10
-
交换变量
二.推导式
1.列表生成式
#通过for循环自动创建列表
list_1 = []
for i in range(11):
list_1.append(i)
print(list_1)
#但是。。。。列表生成式创建列表的话就只要一行搞定!!!
list_2 = [x for x in range(11)]
print(list_2)
#不仅如此,列表生成式中还能运算后生成
list_3 = [i * i for i in range(11)] #每个数乘以自身后添加进列表中
print(list_3)
# 还可以增加条件筛选 for i in range(31) ------ if i % 3 == 0
list_4 = [i for i in range(31) if i % 3 == 0]
print(list_4)
-
字典推导式:类似
key_1 = ['我爱学习python', '学习python挑战高薪'] value_2 = [1, 2] # 字典推导式创建列表的话就只要一行搞定!!! dict_2 = {key_1[i]: value_2[i] for i in range(len(key_1))} print(dict_2)
-
集合推导式
#通过for循环自动创建集合 set_1 = set() for i in range(11): set_1.add() print(set_1) #集合推导式创建列表的话就只要一行搞定!!! set_2 = {x for x in range(11)} print(set_2) #不仅如此,集合推导式中还能运算后生成 set_3 = {i * i for i in range(11)} #每个数乘以自身后添加进集合中 print(set_3) #还可以在推导式后面添加条件 set_4 = {i for i in range(31) if i % 3 is 0} print(set_4)