鱼C论坛

 找回密码
 立即注册
查看: 9899|回复: 7

[已解决]python3.x中如何运用input()函数输入一个列表

[复制链接]
发表于 2017-6-24 11:10:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 willow的小灰灰 于 2017-6-24 11:19 编辑

a_list=input("请输入一个列表:")
这个语法在python2.x中可以运行,输入列表[10,26,7,9]可以正常显示
在python3.5中返回的是字符串,想请教使用什么函数可以解决这个问题?

比如执行如下语句:
a_list=input("请输入一个列表:")
sum=0
for x in a_list :
    if (x>0) and (x%2==0):
        sum=sum+x
print("偶数之和:",sum)

最佳答案
2017-6-24 12:01:16
a_list = eval(input("请输入列表"))
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-6-24 11:32:59 | 显示全部楼层
  1. a_list = list(input("请输入列表"))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-24 11:41:45 | 显示全部楼层
不对,我这样就直接输入数字就行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-24 12:01:16 | 显示全部楼层    本楼为最佳答案   
a_list = eval(input("请输入列表"))
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-6-24 12:37:17 | 显示全部楼层
SixPy 发表于 2017-6-24 12:01
a_list = eval(input("请输入列表"))

大师傅,我想请教一下这个eval()函数的用法是什么样的,这个表达式我有点不太理解?
函数原型:
eval(expression, globals=None, locals=None)
expression:这个参数是一个字符串,python会使用globals字典和locals字典作为全局和局部的命名空间,将expression当做一个python表达式(从技术上讲,是一个条件列表)进行解析和计算。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-24 15:52:49 | 显示全部楼层
py2 的 input 是自动 eval
py3 需要自己加
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-24 18:16:59 | 显示全部楼层
意思是这个函数会把参数当代码运行吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-6-25 16:27:00 | 显示全部楼层
SixPy 发表于 2017-6-24 15:52
py2 的 input 是自动 eval
py3 需要自己加

非常感谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-12 11:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表