python输入字符串转换为公式_Python-输入、列表与字符串之间的转换、zip使用

作为笔试的简单输入

从键盘的输入是字符串,所以需要转为int类型

一行有两个数字:

n,k=map(int,input().split())

一行以空格表示隔开:

如:‘5 3 8 2 5’ --> [5, 3, 8, 2, 5]

nums=[int(i) for i in input().split()]

字符串转为数字的列表:

如:'787585' --> [7,8,7,5,8,5]

nums=input()

nums=list(map(int,nums))

数字转为数字的列表,即求数字各个位上的数:

如:568-->[5,6,8]

num=568num1=list(map(int,list(str(num))))

反之:将数字列表转化为数字字符串

[5,6,8] --> '568'

num=[5,6,8]res1=''.join(map(str,num))

res2=''.join([str(i) for i in num])#另解

发现zip的用处还蛮多的

1. 用zip生成字典

keys=[i for i in range(3)]

values=['a','b','c']

dic=dict(zip(keys,values))

>> dic={0: 'a', 1: 'b', 2: 'c'}

但是字典的keys不能重复

2. 用zip实现对应的两个数组的各元素相减

nums1=[2,3,4,5,6]

nums2=[1,1,1,1,1]

diff=list(map(lambda x:x[0]-x[1], zip(nums1,nums2)))

>>diff=[1, 2, 3, 4, 5]

3. 矩阵转置

a=[[1,2,3],[4,5,6],[7,8,9]]

a_T=list(map(list,zip(*a)))

>>a_T=[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

注意:*a=[1, 2, 3] [4, 5, 6] [7, 8, 9]

如果直接list(zip(*a)),返回的是[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值