Python中文
首页
教程
问答
标签
搜索
登录
注册
“python方式”解析并有条件地替换2dlis中的每个元素
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个列表,它由更多的字符串列表组成,这些字符串可以表示单词(在字母数字意义上)或int,例如</p> <pre><code>myLists = [['5','cat','23'], ['33','parakeet','scalpel'], ['correct','horse','battery','staple','99']] </code></pre> <p>我想解析数组,以便将所有整数表示转换为int。我有一个简单的函数,numParser(string)用于此目的:</p> ^{pr2}$ <p>在我的c/java背景下,我通常只迭代两个数组,改变每个值(尽管这些数组是同构的)。但我对python还不熟悉,我觉得有更好的方法可以做到这一点,所以我四处搜索,找到了一些关于map()和list comprehension的so帖子。列表理解似乎不是正确的方法,因为列表不是统一的,但是map()似乎应该可以工作。为了测试,我做了</p> <pre><code>a=['cat','5','4'] a = map(numParser, a) </code></pre> <p>这很管用。不假思索,我在一个嵌套循环上做了同样的事情,但事实并非如此。在</p> <pre><code>for single_list in myLists: single_list = map(numParser, rawData) </code></pre> <p>现在,在接收到一个未更改的2D数组之后,我突然想到迭代器正在处理对数组的引用,而不是数组本身。<strong>是否有一种超级时髦的python方法来实现我将所有整数表示形式转换为整数的目标,还是需要直接访问每个数组值来更改它,例如myLists[1][2]=numParser(myLists[1][2])?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您可以使用列表理解来执行此操作:</p> <pre><code>>>> [map(numParser, li) for li in myLists] [[5, 'cat', 23], [33, 'parakeet', 'scalpel'], ['correct', 'horse', 'battery', 'staple', 99]] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尽管Python中的所有内容都是引用,为什么Python导师在没有指针的列表中绘制字符串和整数?
3 回答
尽管python中的表达式为false,但循环仍在运行
5 回答
尽管python代码正确,但从nifi ExecuteScript处理器获取语法错误
7 回答
尽管Python在Neovim中工作得很好,但插件不能识别Neovim中的Python主机
10 回答
尽管python字典包含了大量的条目,但它并没有增长
9 回答
尽管python说模块存在,为什么我会得到这个消息?
2 回答
尽管setuptools和控制盘是最新的,但无法识别singleversionexternallymanaged
1 回答
尽管stdout和stderr重定向,但未捕获错误消息
1 回答
尽管Tensorboard的事件太大,但Tensorboard的步骤太少了
9 回答
尽管tkinter上的变量已更改,但显示未更改
4 回答
尽管try/except使用Python进行单元测试时出现断言错误
2 回答
尽管URL是sam,但仍会抛出“达到最大重定向”
3 回答
尽管url有效,Pandas仍读取url的\u csv错误
3 回答
尽管while中存在时间延迟,但LINUX线程的CPU利用率为100%(1)
8 回答
尽管x0在范围内,Scipy优化仍会引发ValueError
3 回答
尽管xpath正确,但使用selenium单击链接仍不起作用
7 回答
尽管下载了ffmpeg并设置了路径变量python,但没有后端错误
1 回答
尽管下载了i,但找不到型号“fr”
9 回答
尽管下载了plotnine包,但未获取名为“plotnine”的模块时出错
3 回答
尽管为所有行指定了权重,网格(0)仍不起作用
9 回答