Python 我正在检查字典中的值是否为整数

Python 我正在检查字典中的值是否为整数,python,pandas,dataframe,Python,Pandas,Dataframe,我试图检查字典中的值是否为整数 我有点像 d = {'number' : '1-', 'name' : 'A'} 我试图在删除“-”后查看number的值是否为整数 代码: 现在它向我展示了d={'number':'1','name':'A'} 这里number的值也是一个字符串。但是我想检查字符串是数字还是字母表 number can be of '12121' or 'rdrr' 如何检查它是否只有数字?使用re模块 import re if re.match(r"\d+","12"

我试图检查字典中的值是否为整数

我有点像

d = {'number' : '1-', 'name' : 'A'}
我试图在删除“-”后查看number的值是否为整数

代码:

现在它向我展示了
d={'number':'1','name':'A'}
这里number的值也是一个字符串。但是我想检查字符串是数字还是字母表

number can be of '12121' or 'rdrr'

如何检查它是否只有数字?

使用
re
模块

 import re
 if re.match(r"\d+","12"): print('It is a number')

使用
re
模块

 import re
 if re.match(r"\d+","12"): print('It is a number')
您可以使用
isdigit()
isalpha()
函数
isdigit()
如果字符串中的所有字符都是数字,则返回“True”;如果字符串中的所有字符都是字母,则返回“True”:

>>> d = {'number' : '1', 'name' : 'A'}
>>> d['number'].isdigit()
True
>>> d['number'].isalpha()
False
>>> d['name'].isdigit()
False
>>> d['name'].isalpha()
True
您可以使用
isdigit()
isalpha()
函数
isdigit()
如果字符串中的所有字符都是数字,则返回“True”;如果字符串中的所有字符都是字母,则返回“True”:

>>> d = {'number' : '1', 'name' : 'A'}
>>> d['number'].isdigit()
True
>>> d['number'].isalpha()
False
>>> d['name'].isdigit()
False
>>> d['name'].isalpha()
True

如果同时需要键和值:

d = {'number' : '1', 'name' : 'A'}

digits = {}
for key, value in d.items():
  if value.isdigit():
    digits[key] = value
如果您只需要一把钥匙:

digits = [key for key, value in d.items() if value.isdigit()]
结果:

print(digits)
对于第一个解决方案:

{'number': '1'}
['number']
对于第二个解决方案:

{'number': '1'}
['number']

如果同时需要键和值:

d = {'number' : '1', 'name' : 'A'}

digits = {}
for key, value in d.items():
  if value.isdigit():
    digits[key] = value
如果您只需要一把钥匙:

digits = [key for key, value in d.items() if value.isdigit()]
结果:

print(digits)
对于第一个解决方案:

{'number': '1'}
['number']
对于第二个解决方案:

{'number': '1'}
['number']

str.is_digits()方法
'12121'。isdigit()返回
True
d['number']=d['number'].replace('-','',regex=True)
?str.is_digits()方法
'12121'。isdigit()返回
True
d['number']=d['number'].replace('-','',regex=True)
?如果if不满足,我可以写一个else函数吗?是的,就像你通常做的那样:
else:print('sorry not a number')
如果if不满足,我可以写一个else函数吗?是的,就像你通常做的那样:
else:print('sorry not a number')
如果if不满足,我可以写一个else函数吗?-当然这些函数返回一个布尔值,因此您可以在
if…elif…else…
中使用它们。如果if不满足,我可以编写一个else函数吗?–当然这些函数返回一个布尔值,因此您可以在
if…elif…else…
中使用它们。