打印特定字符的所有字符串索引位置

时间:2018-08-30 10:40:56

标签: python

如果我有一个string,例如s = '1084271054',并希望打印所有索引位置0,例如:

0 - 1, 7

最基本的方法是什么?

3 个答案:

答案 0 :(得分:2)

[i for i, c in enumerate(s) if c=='0']
Out: [1, 7]

答案 1 :(得分:1)

也许是

1, 7

编辑:

>>> idx=[i for i in range(len(s)) if s[i]=='0']
>>> idx
[1, 7]

答案 2 :(得分:0)

将字符串传递给枚举函数,该函数返回索引和字符的可迭代值。然后,您可以遍历此字符并检查字符是否为@SpringBootApplication public class RestClientApplication { public static void main(String[] args) { SpringApplication.run(RestClientApplication.class, args); try (AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext( RestClientApplication.class)) { System.out.println(" Getting RestTemplateBuilder : " + ctx.getBean("restTemplateBuilder")); System.out.println(" Getting RestTemplate : " + ctx.getBean("restTemplate")); } } @Bean public RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder) { return restTemplateBuilder.build(); } @Bean public CommandLineRunner runner() { return args -> { SOP("hello"); } } } ,如果是,则打印索引:

'0'

输出:

for i,c in enumerate(s):
    if c == '0':
        print(i)

如果您希望它们在一行之间用逗号分隔,则可以将1 7 与生成器一起使用:

str.join

给出:

print(', '.join(str(i) for i,c in enumerate(s) if c == '0'))