使用Python迭代字符串中的每个字符

发布于 2021-01-29 17:12:12

在C ++中,我可以std::string像这样迭代:

std::string str = "Hello World!";

for (int i = 0; i < str.length(); ++i)
{
    std::cout << str[i] << std::endl;
}

如何在Python中遍历字符串?

关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    正如约翰内斯指出的那样,

    for c in "string":
        #do something with c
    

    您可以使用struct迭代python中的几乎所有内容for loop

    例如,open("file.txt")返回文件对象(并打开文件),对其进行迭代,然后对该文件中的行进行迭代

    with open(filename) as f:
        for line in f:
            # do something with line
    

    如果那看起来像魔术,那还算不错,但是它背后的想法真的很简单。

    有一个简单的迭代器协议可以应用于任何对象,以使for循环在其上起作用。

    只需实现定义一个next()方法的迭代器,然后__iter__在类上实现一个方法使其可迭代即可。(__iter__当然,应返回一个迭代器对象,即定义的对象next()

    参阅官方文件



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看