栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python-rong-day05

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python-rong-day05

列表推导式
# 列表推导式 : 就是简化for循环和列表结合操作的一种语法
# [表达式 for 临时变量 in 迭代对象 if 判断]
# ls = []
# for x in range(10):
#     ls.append(x)
# print(ls)
from random import randint
import string
print([i for i in range(10)])
print([i**2 for i in range(10)])
scores = [randint(10, 100) for _ in range(10)]
print(scores)
# 选出成绩及格的
print([s for s in scores if s >= 60])
# 全是偶数
print([s for s in scores if s%2==0])
# 生成十位同学
print([f'学生{i}' for i in range(1, 11)])
print(string.ascii_uppercase)
print(string.ascii_lowercase)
print(string.ascii_letters)
print([f'学生{x}' for x in string.ascii_uppercase[:7]])
二维列表
# 二维数组和zip函数
# 5 x 6 的全零数组
m1 = [[0]*6 for _ in range(5)]
for row in m1:
    print(row)
# 访问 名[行索引][列索引]
m1[4][5] = 999
print("---"*10)
for row in m1:
    print(row)
# 编写函数实现连个矩阵相乘
def matrix_dot(matrix1, matrix2):
    assert len(matrix1[0]) == len(matrix2), "matrix1列 = matrix2行"
    # 确定相乘矩阵的形状
    m, n = len(matrix1), len(matrix2[0])
    res_matrix = [[0]*n for _ in range(m)]
    for i in range(m):
        for j in range(n):
            for k in range(len(matrix1[0])):
                res_matrix[i][j] += matrix1[i][k] * matrix2[k][j]
    return res_matrix

m2 = [[i]*2 for i in range(1, 4)]
m3 = [[i]*2 for i in range(1, 4)]
print("---"*10)
for row in m2:
    print(row)
m4= [[1, 2, 3, 4] for i in range(1, 3)]
print("---"*10)
for row in m4:
    print(row)
# matrix_dot(m2, m3)
res = matrix_dot(m2, m4)
print("---"*10)
for row in res:
    print(row)
zip和元组
# zip 同时迭代两个列表
from matplotlib import pyplot as plt
from math import sqrt
pos_X = [0, 1, 5, 8]
pos_Y = [0, 5, 10, 13]
target = [6, 8]
plt.scatter(pos_X, pos_Y)
plt.scatter(target[0], target[1])
plt.show()
# 计算每个点和target之间的距离
dis = []
for x, y in zip(pos_X, pos_Y):
    d = sqrt((x-target[0])**2 + (y-target[1])**2)
    dis.append(d)
print(dis)
#
ss = []
for i in range(len(pos_X)):
    s = sqrt((pos_X[i] - target[0]) ** 2 + (pos_Y[i]  - target[1]) ** 2)
    ss.append(s)
print(ss)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/589145.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号