from random import randint
# 数据类型
# 1. 字符串string str()
name = "eric"
# 2.数字number int() float()
age = 19
weight = 80.3
# 3. 列表 list 存储一组数据
stu_list = ['eirc', 'Bob', 'hanmeimei']
# score_list = []
# for i in range(10):
# score_list.append(randint(10, 100))
# print(score_list)
# 列表推导式 [表达式 for 临时变量 in 迭代对象 if 条件]
score_list = [randint(10, 100) for i in range(10)]
print(score_list)
# 筛选
print([score for score in score_list if score >= 60])
print([score for score in score_list if score%2==0])
print([score for score in score_list if score%2==1])
# 4. 元组 tuple(): 不可更改的列表
score_t = tuple(score_list)
print(score_t)
# 常用于函数返回值(同时返回多个变量的时候是以元组的形式进行返回的), 矩阵或者张量等数据的shape 是元组结构
import numpy as np
arr1 = np.array([[i for i in range(10)]])
arr2 = np.mat([i for i in range(10)])
print(arr1)
print(arr2)
print(np.mat(10))
print(arr1.shape)
print(arr2.shape)
print(np.array(10).shape)
print(np.array([11, 11]).shape)
tensor1 = np.random.randint(1, 100, (2, 3, 4, 5, 5))
print(tensor1.shape)
print(tensor1)
# 5. 字典 dict() key:value
p_info = {'name': 'Eric', 'age': 19, 'score': 99}
print(p_info)
# 通过键访问值
print(p_info['age'])
print(p_info['name'])
# 6 集合 set() 无序不重复 常常用于去重
s = {111, 222, 333, 666, 666, 666, 'haha'}
print(s)
species = [randint(0, 2) for i in range(100)]
print(species)
print(set(species))
函数和排序算法
from random import randint
# 判断循环
# 函数
# def 函数名():
# pass
# def calSum(n: int) -> int:
def calSum(n):
sums = 0
for i in range(1, n+1):
sums += i
return sums
print(calSum(10))
print(calSum(100))
print(calSum(1000))
# 基础排序算法 冒泡/选择/插入排序
score_list = [randint(10, 100) for i in range(10)]
print(score_list)
# a, b = b, a
# 冒泡
def bubleSort(ls):
for i in range(len(ls)-1):
for j in range(len(ls) - 1, 0, -1):
if ls[j] < ls[j - 1]:
ls[j], ls[j - 1] = ls[j - 1], ls[j]
bubleSort(score_list)
print(score_list)
print("*"*100)
score_list = [randint(10, 100) for i in range(10)]
print(score_list)
# 选择
def selectSort(ls):
for i in range(len(ls)-1):
minIndex = i
for j in range(i, len(ls)):
if ls[minIndex] > ls[j]:
minIndex = j
ls[minIndex], ls[i] = ls[i], ls[minIndex]
selectSort(score_list)
print(score_list)
print("*"*100)
score_list = [randint(10, 100) for i in range(10)]
print(score_list)
def insertSort(ls):
for i in range(len(ls)):
j = i
while j-1>=0:
if ls[j] < ls[j-1]:
ls[j], ls[j - 1] = ls[j - 1], ls[j]
else:
break
j-=1
insertSort(score_list)
print(score_list)
# 面向对象
更多详细https://blog.csdn.net/qq_39276337/article/details/120165089



