Python 内置 max 函数抛出“dict”对象没有列表类型对象的属性“max”

问题描述

我将以下代码行作为 pyspark 管道的一部分(从配置文件中获取硬编码列表),并且我正在 EMR 中运行我的管道。下面是 EMR Bootstrap 图像。内置函数将 int 列表视为 dict 并抛出以下错误。知道为什么我会看到这种奇怪的行为吗?

    max_n_days = __builtins__.max([10,20])  

EMR 引导程序:

 #!/bin/bash

sudo easy_install pip
sudo yum install -y tkinter tk-devel
sudo yum install -y python3-pip
sudo pip install boto3
sudo pip install configparser
sudo pip install paramiko
sudo pip install nltk
sudo pip install scipy
sudo pip install scikit-learn
sudo pip install pandas==0.24.2
sudo pip install -U keras
sudo pip install pyddq
sudo pip install torch
sudo pip install numpy 
sudo pip install future
sudo pip install keras==2.2.4
sudo pip install PyArrow==0.15.1
sudo pip install --upgrade awscli

错误:

max_n_days = __builtins__.max([10,20])  # use buildins reference
AttributeError: 'dict' object has no attribute 'max'
None

注意:我使用 'builtins.max()' 因为 'max' 与 sql max 函数发生冲突。我在 emr 上使用 python 2.7,也尝试过“导入内置函数”,但找不到内置函数。根据其他堆栈溢出帖子中的建议,我在我的集​​群上安装了“future”,但没有运气,仍然没有找到内置函数。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)