python菜鸟教程-矩阵对应位置相加

44 3*3的矩阵对应位置相加-for循环

两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵:

X = [[12,7,3],

    [4 ,5,6],

    [7 ,8,9]]

Y = [[5,8,1],

    [6,7,3],

    [4,5,9]]

程序分析:创建一个新的 3 行 3 列的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

X = [[12, 7, 3],
     [4, 5, 6],
     [7, 8, 9]]
print("矩阵的行",len(X))   #  这么写是因为矩阵的每一个列表为一行,矩阵由n行组成
print("矩阵的列",len(X[0]))  # 这么写是因为X的第一个元素为第一列,计算X[0]的长度即为列的长度
Y = [[5, 8, 1],
     [6, 7, 3],
     [4, 5, 9]]

#  创建一个结果的空矩阵
result = [[0, 0, 0],
          [0, 0, 0],
          [0, 0, 0]]

# 迭代输出行
for i in range(len(X)):
    # 迭代输出列
    for j in range(len(X[0])):
        result[i][j] = X[i][j] + Y[i][j]

for r in result:  # 用r或者i都可以
    print(r)

矩阵的行 3

矩阵的列 3

[17, 15, 4]

[10, 12, 9]

[11, 13, 18]

45统计 1 到 100 之和

sum = 0
for i in range(1,101):  #循环相加是数字是i
    sum += i
print("1-100相加的和为:",sum)

1-100相加的和为: 5050

46求输入数字的平方,如果平方运算后小于 50 则退出

# 先定义while判断条件
TRUE = 1
FALSE = 0
again = 1
print ('如果输入的数字小于 50,程序将停止运行。')
while again:  #如果正确了就继续,不正确了就跳出
    num = int(input("请输入一个数字>"))
    a = num * num
    print("运算结果为%d" % a)
    if a >= 50:
        again = TRUE
    else:
        again = FALSE

如果输入的数字小于 50,程序将停止运行。

请输入一个数字>12

运算结果为144

请输入一个数字>11

运算结果为121

请输入一个数字>6

运算结果为36

47 两个变量值互换

def exchange(a,b):
    a,b = b,a
    return(a,b)

x = 10
y = 20
print("x = %d,y = %d" % (x,y))
x,y = exchange(x,y)
print("x = %d,y = %d" % (x,y))

x = 10,y = 20

x = 20,y = 10

a = int(input("请输入一个整数a>"))
b = int(input("请输入一个整数b>"))
a,b = b,a
print("a = %d,b= %d" % (a,b))

请输入一个整数a>12

请输入一个整数b>21

a = 21,b= 12

48 数字比较

a = int(input("请输入一个整数a>"))
b = int(input("请输入一个整数b>"))

if a > b:
    print("%d > %d" % (a,b))
if a < b:
    print("%d < %d" % (a,b))
else:
    print("%d = %d" % (a,b))

请输入一个整数a>12

请输入一个整数b>21

12 < 21

49 使用lambda来创建匿名函数-求最大值和最小值

lambda只能写一行,返回值只能是一个数

MAXIMUM = lambda x, y: (x > y) * x + (x < y) * y
MINIMUM = lambda x, y: (x > y) * y + (x < y) * x

if __name__ == '__main__':
    a = 10
    b = 20
    print('The largar one is %d' % MAXIMUM(a, b))
    print('The lower one is %d' % MINIMUM(a, b))

The largar one is 20

The lower one is 10

50输出一个随机数——使用 random 模块

Python random 模块 | 菜鸟教程

import random
#生成10到20之间的随机数
#uniform返回一个随机浮点数,在10-20之间
print(random.uniform(10,20))
#random() 方法返回随机生成的一个实数,它在[0,1)范围内。
print(random.random())
#randrange()从 range(start, stop, step) 返回一个随机选择的元素。默认step为1
print(random.randrange(1,100,2))
#randint(a, b) 随机返回一个整数
print(random.randint(1,10))

11.363569507612274

0.24154087492184817

17

2

方法

描述

seed()

初始化随机数生成器

getstate()

返回捕获生成器当前内部状态的对象。

setstate()

state 应该是从之前调用 getstate() 获得的,并且 setstate() 将生成器的内部状态恢复到 getstate() 被调用时的状态。

getrandbits(k)

返回具有 k 个随机比特位的非负 Python 整数。 此方法随 MersenneTwister 生成器一起提供,其他一些生成器也可能将其作为 API 的可选部分提供。 在可能的情况下,getrandbits() 会启用 randrange() 来处理任意大的区间。

randrange()

从 range(start, stop, step) 返回一个随机选择的元素。

randint(a, b)

返回随机整数 N 满足 a <= N <= b。

choice(seq)

从非空序列 seq 返回一个随机元素。 如果 seq 为空,则引发 IndexError。

choices(population, weights=None, *, cum_weights=None, k=1)

从 population 中选择替换,返回大小为 k 的元素列表。 如果 population 为空,则引发 IndexError。

shuffle(x[, random])

将序列 x 随机打乱位置。

sample(population, k, *, counts=None)

返回从总体序列或集合中选择的唯一元素的 k 长度列表。 用于无重复的随机抽样。

random()

返回 [0.0, 1.0) 范围内的下一个随机浮点数。

uniform()

返回一个随机浮点数 N ,当 a <= b 时 a <= N <= b ,当 b < a 时 b <= N <= a 。

triangular(low, high, mode)

返回一个随机浮点数 N ,使得 low <= N <= high 并在这些边界之间使用指定的 mode 。 low 和 high 边界默认为零和一。 mode 参数默认为边界之间的中点,给出对称分布。

betavariate(alpha, beta)

Beta 分布。 参数的条件是 alpha > 0 和 beta > 0。 返回值的范围介于 0 和 1 之间。

expovariate(lambd)

指数分布。 lambd 是 1.0 除以所需的平均值,它应该是非零的。

gammavariate()

Gamma 分布( 不是伽马函数) 参数的条件是 alpha > 0 和 beta > 0。

gauss(mu, sigma)

正态分布,也称高斯分布。 mu 为平均值,而 sigma 为标准差。 此函数要稍快于下面所定义的 normalvariate() 函数。

lognormvariate(mu, sigma)

对数正态分布。 如果你采用这个分布的自然对数,你将得到一个正态分布,平均值为 mu 和标准差为 sigma 。 mu 可以是任何值,sigma 必须大于零。

normalvariate(mu, sigma)

正态分布。 mu 是平均值,sigma 是标准差。

vonmisesvariate(mu, kappa)

冯·米塞斯分布。 mu 是平均角度,以弧度表示,介于0和 2*pi 之间,kappa 是浓度参数,必须大于或等于零。 如果 kappa 等于零,则该分布在 0 到 2*pi 的范围内减小到均匀的随机角度。

paretovariate(alpha)

帕累托分布。 alpha 是形状参数。

weibullvariate(alpha, beta)

威布尔分布。 alpha 是比例参数,beta 是形状参数。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值