python笔试--输入输出总结(二)

1、二维列表输入

(1)新建一个列表,使用append在列表中添加列表

friends = []
friends.append(['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'])
friends.append(['pizza', 'fish', 'potato', 'beef'])
friends.append([3, 6, 0, 3])
print(friends)

(2)创建一个包含空列表的列表,然后逐个赋值给每个子列表

friends = [[] for _ in range(3)] #_为占位符,与i同
friends[0] =  ['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'] 
friends[1] =  ['pizza', 'fish', 'potato', 'beef']
friends[2] =  [3, 6, 0, 3]
print(friends)

2、pop的用法

pop 是 Python 列表(list)对象的一个方法,用于移除并返回列表中的一个元素。pop 方法有两种常见的用法。

(1)不带参数

如果不带参数调用 pop,它会移除并返回列表的最后一个元素。 这种用法通常用于栈(stack)数据结构,模拟后进先出(LIFO)的行为。

stack = [1, 2, 3, 4, 5]
last_element = stack.pop()
print(last_element)  # 输出: 5
print(stack)       # 输出: [1, 2, 3, 4]

(2)带参数

如果带一个整数参数 index 调用 pop,它会移除并返回列表中指定索引位置的元素。 这种用法通常用于队列(queue)数据结构,模拟先进先出(FIFO)的行为。

❗❗❗参数表示的是指定索引

queue = [1, 2, 3, 4, 5]
first_element = my_list.pop(0)
print(first_element)  # 输出: 1
print(my_list)        # 输出: [2, 3, 4, 5]

queue = [1, 2, 3, 4, 5]
first_element = my_list.pop(queue[0])
print(first_element)  # 输出: 2
print(my_list)        # 输出: [1, 3, 4, 5]

3、位与and位或

直接用位与(&)和位或(|)符号进行运算,不需要转换为二进制再进行计算

x,y = input().split()
print(int(x) & int(y))
print(int(x) | int(y))

位与:位与操作符用符号 & 表示。它对两个整数的每一位进行比较,如果两个相应的二进制位都为 1,则结果的该位为 1,否则为 0。

位或:位或操作符用符号 | 表示。它对两个整数的每一位进行比较,如果两个相应的二进制位中至少有一个为 1,则结果的该位为 1,否则为 0。

例如:

1 = 0001,2 = 0010
0001 & 0010 = 0000 = 0
0001 |0010 = 0011 = 3

4、input的使用

n = input() 是 Python 中用于从用户那里获取输入的函数。工作原理如下:

  1. 等待用户输入:当程序执行到 n = input() 这一行时,它会暂停并等待用户在控制台中输入一些内容。
  2. 读取输入:用户输入完成后(通常是通过按下回车键),input() 函数会读取用户输入的内容,并将其作为字符串返回。
  3. 赋值给变量:返回的字符串被赋值给变量 n。

示例:

grade_dict = {"A":4.0,"B":3.0,"C":2.0,"D":1.0,"F":0}
score = 0
sc = 0
n = input()
while n != "False":
    s = int(input())
    sc += s
    score += grade_dict[n] * s
    n = input()
print("%0.2f"%(score/sc))
#每次使用input()都能读取下一行的内容

5、输出以空格间隔/直接换行

以空格输出,用print(i,end = ' '),示例:

for i in range(1,16):
    if i != 13:
        print(i,end = ' ')
    else:
        continue

直接换行,print()输出时自动换行,示例:

for i in range(1,16):
    if i != 13:
        print(i)
    else:
        continue

6、矩阵相加

 (1)输出n个矩阵

list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
n = 2
print(n * list1)

#输出[[1, 2, 3], [4, 5, 6], [7, 8, 9],[1, 2, 3], [4, 5, 6], [7, 8, 9]]

(2)n个矩阵相加

n个矩阵相加,就是将矩阵中每个位置的元素都乘上n

list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
n = 2
list1 = [[int(j) * n for j in i]for i in list1]
print(list1)

#输出:[[2, 4, 6], [8, 10, 12], [14, 16, 18]]

list1 = [[int(j) * n for j in i]for i in list1]表示

  • 外层嵌套:遍历list1中的子列表
  • 内层嵌套:遍历子列表中的元素,并进行相加操作
  • 最终结果:得到新的矩阵列表
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值