Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何仅打印字符串中的整数/数字_String_Python 2.7_Python 3.x_Int_Return - Fatal编程技术网

String 如何仅打印字符串中的整数/数字

String 如何仅打印字符串中的整数/数字,string,python-2.7,python-3.x,int,return,String,Python 2.7,Python 3.x,Int,Return,您好,我是编程和python方面的新手,我有一个问题 如何打印或仅返回字符串中的数字 例如: "Hu765adjH665Sdjda" 输出: "765665" 试用过滤器 >>> str='1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol' >>> print str 1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol >>> filter(lambda x:x>='0' and x<='

您好,我是编程和python方面的新手,我有一个问题

如何打印或仅返回字符串中的数字

例如:

"Hu765adjH665Sdjda"
输出:

"765665"
试用过滤器

>>> str='1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol'
>>> print str
1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol
>>> filter(lambda x:x>='0' and x<='9', str)
'123456789'
>>str='1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol'
>>>打印str
QAZ2WSX3EDC4RFV5TGB6YHN7UJM8IK9OL

>>>过滤器(λx:x>='0'和x您可以使用re.sub删除任何非数字字符

import re

string = "Hu765adjH665Sdjda"
string = re.sub('[^0-9]', '', string)
print string
#'765665'
re.sub
从左到右扫描字符串。每次它发现一个不是数字的字符时,它都会将其替换为空字符串(这与删除它的所有实际用途相同)。

句子=“Hu765adjH665Sdjda”
对于句子中的数字:
如果“0123456789”中的数字:
打印(数字)

嘿,谢谢你的快速回答!!还有一件事,你能解释一下这里发生了什么吗?哦,我得到了一个错误:不要使用像
str
这样的名称,因为它们非常直接地覆盖了像
str
这样的函数,
filter
接受一个谓词和一组输入,只返回那些predicate的计算结果为true此“lambda”函数的作用是什么?嘿,感谢您的及时回复!您能解释一下这里发生了什么吗?谢谢!:d这也可以用于字母表吗?例如,如果我只想要字母表而不是数字…那么我可以将其更改为[^a-z]…那就行了?谢谢!非常感谢你的帮助!不客气。记住,如果答案对你有用,就接受它。
>>> s = "Hu765adjH665Sdjda"
>>> ''.join(c for c in s if c in '0123456789')
'765665'