我想从字符串中提取某种类型的变量名(不允许使用数字、_等),不需要任何导入(仅限于纯Python),并且尽可能短(即使它不可读).

我该怎么做呢?

示例:

"asd123*456qwe_h"->[asd,qwe,h].

(不允许使用‘a’、‘qw’等)

推荐答案

仅限内置:

s = 'asd123*456qwe_h'
print(s.translate(str.maketrans({k: ' ' for k in s if not k.isalpha()})).split())

Output:

['asd', 'qwe', 'h']

Python相关问答推荐

具有症状的分段函数:如何仅针对某些输入值定义函数?

如何在具有重复数据的pandas中对groupby进行总和,同时保留其他列

如何访问所有文件,例如环境变量

在Pandas DataFrame操作中用链接替换'方法的更有效方法

使可滚动框架在tkinter环境中看起来自然

将图像拖到另一个图像

为什么sys.exit()不能与subproccess.run()或subprocess.call()一起使用

NumPy中条件嵌套for循环的向量化

形状弃用警告与组合多边形和多边形如何解决

pandas在第1列的id,第2列的标题,第3列的值,第3列的值?

让函数调用方程

CommandeError:模块numba没有属性generated_jit''''

如何更改groupby作用域以找到满足掩码条件的第一个值?

在Python中计算连续天数

python中csv. Dictreader. fieldname的类型是什么?'

如何获取Python synsets列表的第一个内容?

如何在Python请求中组合多个适配器?

如何删除重复的文字翻拍?

PySpark:如何最有效地读取不同列位置的多个CSV文件

利用SCIPY沿第一轴对数组进行内插