【问题标题】:iterate through function arguments supposede to be lists python遍历函数参数应该是列表 python
【发布时间】:2015-06-02 11:17:43
【问题描述】:

我尝试用python写一个长程序 第一部分是:

def frequence(entranche):
podium = []
for item in entranche:
    scat = len(entranche)
    for indice in range (len(entranche)):

        if entranche[indice] == item:
            scat -= 1
        frequence = len(entranche) - scat
        podium = podium.append(frequence)
    plus_haute_frequence = max (podium)   
    return(plus_haute_frequence)

print(frequence(("Je suis né dans le béton Coincé entre deux maisons Sans abri sans domicile" ).split()))

程序如何将“entranche”视为列表?

【问题讨论】:

  • 你有 lst 尚未定义的变量
  • 是的,您的权利我很抱歉,最终形式已更改,因为我试图将变量名称更改为 lst 希望解决问题,但无论如何......
  • podium = podium.append(frequence)podium = None 相同。试试podium.append(...),不要把它分配到讲台上。
  • 另一方面,你想用这个功能完成什么?您是否尝试构建列表中单词的频率分布entranche

标签: python function types


【解决方案1】:

没有办法准确地回答我的问题 按照 xph 我试试这个

def frequence(entranche):
    podium = []
    print("premier podium", type(podium))
    for item in entranche:
        print ("deuxieme podium", type(podium))
        scat = len(entranche)
        for indice in range (len(entranche)):            
            if entranche[indice] == item:
                scat -= 1
            frequence = len(entranche) - scat

        podium = podium.append(frequence)
        print("troisieme podium", type(podium))
        plus_haute_frequence = max(podium)   
    return(plus_haute_frequence)
print(frequence("Je suis né dans le béton Coincé entre deux maisons".split()))

我得到了一个大惊喜!

premier podium <class 'list'>
deuxieme podium <class 'list'>
troisieme podium <class 'NoneType'>

什么是 IT??

【讨论】:

  • 我认为写另一个问题作为答案不好。只需提出一个新问题,因为这是一个新问题 - 我猜您的 entranche 列表问题现在已修复?然后只需勾选最有帮助的答案,那就太好了。现在,我认为您的问题是:troisieme podium &lt;class 'NoneType'&gt; - 对吧?这是因为podium = podium.append(frequence)。只需将新值附加到您的列表中,在这里重新分配变量是不正确的。只需podium.append(frequence)
  • Wonderfull 我会尝试提出一个新问题并将其与您的答案相结合。
【解决方案2】:

如果entranche 是一个列表,您将不会看到该错误。所以,检查一下entranche 到底是什么。检查它的type(),或者只是print

你会在这里发现你的错误:

entranche = poeme.split 

应该是:

entranche = poeme.split()

【讨论】:

  • 请看我写的下一个回复。
  • 对不起,我在定义函数的行之后返回了 entranche 的类型。我很纠结,我觉得一个好的教程是必要的。这对我来说是什么东西?
  • @kouty:抱歉,我不明白你对entranche 有什么问题 :-( 我猜一些代码和你得到的错误可能会有所帮助。
【解决方案3】:

entranche = poeme.split 是一个函数,而不是一个列表。您忘记了括号,它实际调用函数 entranche = poeme.split() 并返回一个列表。

【讨论】:

    【解决方案4】:

    你没有调用split方法。

    entranche = poeme.split()
    

    【讨论】:

      猜你喜欢
      • 2014-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 2017-11-06
      • 2017-01-18
      • 1970-01-01
      相关资源
      最近更新 更多