为什么循环浏览元组会给我字符串的第一个字符?

戴维·D

有人可以向我解释这种行为:

REQUIRED_USER_FIELDS = ["email"]
for field in REQUIRED_USER_FIELDS:
    # field = 'email' -> OK for me, expected behaviour

REQUIRED_USER_FIELDS = ("email")
for field in REQUIRED_USER_FIELDS:
    # field = 'e' -> Why???

谢谢

用户2555451

("email")不是元组。它只是带括号的字符串。

您需要放置一个逗号使其成为一个元组:

REQUIRED_USER_FIELDS = ("email",)
#                        here--^

否则,您的for循环将遍历字符串"email"本身。


您应该记住,创建元组的逗号,而不是括号(如果有):

>>> ("email")
'email'
>>> "email"
'email'
>>> ("email",)
('email',)
>>> "email",
('email',)
>>>

您经常看到括号的原因是:

  1. 它们使您更清楚地创建了一个元组。

  2. 您在某些地方需要它们,例如在调用函数时:

    >>> def func(arg):
    ...     return arg
    ...
    >>> # This fails because "a", "b" is treated as 2 separate arguments
    >>> func("a", "b")
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: func() takes 1 positional argument but 2 were given
    >>>
    >>> # This works because ("a", "b") is treated as 1 argument (a tuple)
    >>> func(("a", "b"))
    ('a', 'b')
    >>>
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么循环浏览元组会给我字符串的第一个字符?

来自分类Dev

为什么我的过程仅从字符串中插入第一个字符?

来自分类Dev

为什么在C ++中当我用'+'合并字符串时不合并但删除字符串的第一个字符

来自分类Dev

为什么字符串连接仅消耗第一个字符串?

来自分类Dev

为什么我期望哈希时AngularJS selectpicker给我一个字符串?

来自分类Dev

为什么第二个字符串保存在第一个字符串中?

来自分类Dev

为什么我的条件语句有选择地删除输出字符串中的第一个字符?

来自分类Dev

为什么此代码反复从stringstream中仅提取第一个字符串?

来自分类Dev

为什么在循环中给我的char *分配了一个字符串,但之后却是“(null)”?编译器错误?

来自分类Dev

HTML 标签中的第一个字符串叫什么?

来自分类Dev

元组列表中第一个字符串之后存在多少个整数

来自分类Dev

在字符串的第一个字符之后插入字符?

来自分类Dev

正则表达式匹配字符串的第一个和最后一个字符,但是为什么呢?

来自分类Dev

字符串小写的第一个字符-C#

来自分类Dev

快速获取字符串第一个字符的方法?

来自分类Dev

在作为字母的字符串中查找第一个字符

来自分类Dev

R从字符串中删除第一个字符

来自分类Dev

Pinvoke字符串中仅传递第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

Swift:比较字符串的第一个字符

来自分类Dev

Java获取字符串的第一个字符值

来自分类Dev

返回字符串中每个单词的第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

Android如何获取字符串的第一个字符?

来自分类Dev

C ++ fstream仅保存字符串的第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

在Oracle Server中删除字符串的第一个字符

来自分类Dev

查找数组字符串中的第一个字符

来自分类Dev

从字符串中提取第一个字符

Related 相关文章

  1. 1

    为什么循环浏览元组会给我字符串的第一个字符?

  2. 2

    为什么我的过程仅从字符串中插入第一个字符?

  3. 3

    为什么在C ++中当我用'+'合并字符串时不合并但删除字符串的第一个字符

  4. 4

    为什么字符串连接仅消耗第一个字符串?

  5. 5

    为什么我期望哈希时AngularJS selectpicker给我一个字符串?

  6. 6

    为什么第二个字符串保存在第一个字符串中?

  7. 7

    为什么我的条件语句有选择地删除输出字符串中的第一个字符?

  8. 8

    为什么此代码反复从stringstream中仅提取第一个字符串?

  9. 9

    为什么在循环中给我的char *分配了一个字符串,但之后却是“(null)”?编译器错误?

  10. 10

    HTML 标签中的第一个字符串叫什么?

  11. 11

    元组列表中第一个字符串之后存在多少个整数

  12. 12

    在字符串的第一个字符之后插入字符?

  13. 13

    正则表达式匹配字符串的第一个和最后一个字符,但是为什么呢?

  14. 14

    字符串小写的第一个字符-C#

  15. 15

    快速获取字符串第一个字符的方法?

  16. 16

    在作为字母的字符串中查找第一个字符

  17. 17

    R从字符串中删除第一个字符

  18. 18

    Pinvoke字符串中仅传递第一个字符

  19. 19

    从字符串中删除第一个字符

  20. 20

    Swift:比较字符串的第一个字符

  21. 21

    Java获取字符串的第一个字符值

  22. 22

    返回字符串中每个单词的第一个字符

  23. 23

    从字符串中删除第一个字符

  24. 24

    Android如何获取字符串的第一个字符?

  25. 25

    C ++ fstream仅保存字符串的第一个字符

  26. 26

    从字符串中删除第一个字符

  27. 27

    在Oracle Server中删除字符串的第一个字符

  28. 28

    查找数组字符串中的第一个字符

  29. 29

    从字符串中提取第一个字符

热门标签

归档