Python 如何通过在循环中反向访问字符串的一部分
假设我想访问“N”,但我需要通过在这样的循环中倒转来实现-Python 如何通过在循环中反向访问字符串的一部分,python,string,loops,indexing,Python,String,Loops,Indexing,假设我想访问“N”,但我需要通过在这样的循环中倒转来实现- myList = [] myString = "this is my striNg 7" 我该怎么做?我正在努力寻找答案。谢谢 编辑-很抱歉,我是新来的,我不知道为什么它没有正确格式化这个字符串,只需在字符串上从最后一个索引循环到第一个,并获取所需的元素。 myString=“这是我的字符串7”; 对于(i=myString.length-1;i>0;i--){ if(myString[i]='N'){ log('N的索引为'+i')
myList = []
myString = "this is my striNg 7"
我该怎么做?我正在努力寻找答案。谢谢
编辑-很抱歉,我是新来的,我不知道为什么它没有正确格式化这个字符串,只需在字符串上从最后一个索引循环到第一个,并获取所需的元素。
myString=“这是我的字符串7”;
对于(i=myString.length-1;i>0;i--){
if(myString[i]='N'){
log('N的索引为'+i');
}
}
您可以通过以下操作访问“N”变量,或在i之前访问3个字符:
for i in myString:
if i == "7":
myList.append(i - 3 spaces)
Enumerate将以i=0开始,并在每次循环继续时向i添加1,但我建议您添加一个条件以避免出现负数,并向myString[i-3]添加一个错误,例如:
for i,str in enumerate(myString):
if str == "7":
myList.append(myString[i-3])
我不知道你在问什么。如果您希望在字符串中出现字母“N”的位置获得最高索引,
str.rfind()
和str.rindex()
正是为此而构建的。这两者之间的唯一区别是:rfind
将在失败时返回-1,rindex
将改为引发ValueError
。或者,如果要向后循环并将字母附加到从字符串末尾开始的列表中:
a_列表=[]
a_string='这是一个字符串'
对于范围内的i(len(a_字符串)-1,-1,-1):
a_list.append(a_字符串[i])
打印(a_列表)
[g',n',i',r',t',s',a',s',i',s',i',h',t']
这很有效,谢谢。我有点困惑str在这里做什么。将str放在“i”之后是否意味着当“i”通过循环时,它将作为字符串索引计数器而不是整数通过?如果是这种情况,尽管您仍然可以说-If i==“7”。enumerate
将在您迭代元素时枚举元素,因此对于i,enumerate(object)
中的str将迭代元素(str
)及其枚举索引(i
),因此在您的情况下i
将是0、1、2、3,4等等,而str
将是't','h','i','s','',太棒了!很高兴它解决了您的问题;-)不要忘记通过点击验证按钮来指出解决问题的最佳答案:-)您将在这里了解更多详细信息-->@lupodellasleppa这是纯js
for i,str in enumerate(myString):
if (i > 2 and str == "7"):
myList.append(myString[i-3])