Python 如何在给定字符串中查找特定字符?

Python 如何在给定字符串中查找特定字符?,python,python-2.7,Python,Python 2.7,第二个整周的课程刚刚结束,我很难找到字符串中的具体内容。 如果用户输入地址“1234地址” 我需要在math.pow中放置什么,以便它知道如何找到数字1和2 类中唯一显示的是str.index(“”),我只能使用它来查找字符串中特定字符的位置 我有一个任务很快就要完成,这在很大程度上依赖于此,所以任何帮助都将不胜感激 编辑:为了澄清,我如何让python找到地址中的第一个和第二个数字,无论它们在地址中的哪个位置?在python中,字符串是迭代类型的数据,因此可以使用索引来访问字符串!像my_st

第二个整周的课程刚刚结束,我很难找到字符串中的具体内容。 如果用户输入地址“1234地址” 我需要在math.pow中放置什么,以便它知道如何找到数字1和2

类中唯一显示的是str.index(“”),我只能使用它来查找字符串中特定字符的位置

我有一个任务很快就要完成,这在很大程度上依赖于此,所以任何帮助都将不胜感激


编辑:为了澄清,我如何让python找到地址中的第一个和第二个数字,无论它们在地址中的哪个位置?

在python中,字符串是迭代类型的数据,因此可以使用索引来访问字符串!像
my_string[1]
这会给你第二个字符!然后使用
isdigit()
函数,您可以检查它是否为数字

演示:

import math

x = raw_input("Enter your address")

print ("The first number to the power of the second number in your address is", math.pow(
对于查找字符串中的数字,您可以使用
[regex][1]
re.search()
函数:

>>> s='12erge'
>>> s[1]
'2'
>>> s[1].isdigit()
True
>>> s[4]
'g'
>>> s[4].isdigit()
False
在此代码中,
r'\d+'
是一个正则表达式,它匹配len大于0的所有数字

>>> import re
>>> s='my addres is thiss : whith this number 11243783'
>>> m=re.search(r'\d+',s)
>>> print m.group(0)
11243783
您需要导入正则表达式。因为您不知道数字在字符串中出现的顺序,所以它会更有用。然后,您需要找到字符串中的所有数字。”\d+'将有助于获取字符串中的所有数字。然后,您需要做的就是获取第一个元素,并从该字符串中获取前两个数字

希望这有帮助。

只需使用
x.isdigit()
查找数字并将其插入列表中即可。然后使用
math.pow
找到前两个的幂

import re
numbers = re.findall(r'\d+',x)
numbers[0][0:2]

你的意思是找到1和2,或者仅仅是字符串的第一个和第二个字符?我只是重读了我写的内容,抱歉混淆:(如何找到字符串中第一个和第二个数字,如果地址是“address 2542”,那么应该找到2和5。
#!/usr/bin/python
import math

address = raw_input("Enter your address : ")
digits = []

for c in address:
    if c.isdigit():
        digits.append(c)

if len(digits) >= 2:
    print "The first number to the power of the second number in your address is : "
    print math.pow(float(digits[0]), float(digits[1]))
else:
    print "Your address contains less than 2 numbers"