Python 随笔——从文本中读取数据及Lambda表达式

编程入门 行业动态 更新时间:2024-10-16 02:29:17

Python 随笔——从文本中读取数据及Lambda<a href=https://www.elefans.com/category/jswz/34/1771310.html style=表达式"/>

Python 随笔——从文本中读取数据及Lambda表达式

Python 随笔——从文本中读取数据及Lambda表达式


标准输入输出


之前在使用python的时候如果从文本中加载数据,一般加载的都是m*n行的矩阵,这种情况下可以使用np.loadtxt很容易解决,但是如果像普通的输入,并不是规则的矩阵,要怎么输入呢?

尝试一

经过查阅资料发现可以使用 fin.readline()来完成对某行的读取,但是这样读取出来的结果是字符串,并且还需要不断地去掉分隔符,不然得到地结果不正确。

如果说要从读取的字符串中取到数字,还需要使用正则表达式

dataA=(fin.readline().strip())
dataA=re.findall("\d+",dataA)

如果要读取负数,还需要添加前面的-号

data=(fin.readline().strip(' '))
data=(re.findall("\-?\d+",data))

这样的读写方式和cin有着天壤之别。。

但是找了很久还是没有找到正确的输入方式,最终到codeforce查看别人的代码才发现正确的输入方式

解决

正确的输入方式如下

data = list(map(int,input().split()))

这样就可以读取整行的数字到列表data中,十分方便。这才是python该有的样子!

Lambda表达式

其实在很多地方已经见过了lambda表达式,比如在排序的时候,会用lambda来指定key。

但是在使用的时候并不知道lambda是什么意思。

在查阅之后惊奇的发现,其实lambda表示的就是匿名函数,用法有点类似于js中的=>

比如在js中:

(a)=>a+1 

代表的含义是

function(a)
{return a+3
}

对于lambda

lambda x:x+2

代表的含义是

def fun(x):return x+2

可见其实两者含义是一样的!!!

更多推荐

Python 随笔——从文本中读取数据及Lambda表达式

本文发布于:2023-07-28 20:01:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1295059.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:表达式   随笔   数据   Python   Lambda

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!