找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 405|回复: 4

[求助] 新手按照教程编程后遇到一个问题,跪求解答!

5

主题

9

帖子

9

积分

贫民

积分
9
benson 发表于 2019-5-14 19:42:29 | 显示全部楼层 |阅读模式
from prettytable import PrettyTable
mark=PrettyTable()
field=['name','Chinese','math','English'],
field.extend('physics','chemistry')
person1=['xiaowang',83,65,72]
person1.extend(77,88)
person2=['xiaohua',92,74,63]
person2.extend(63,89)
person3=['xiaoli',96,81,85]
person3.extend(92,85)
mark.field_names=field
mark.add_row(person1)
mark.add_row(person2)
mark.add_row(person3)
print mark
源码如上,一运行:

Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\李昊恩Python\test6.24", line 4, in <module>
    field.extend('physics','chemistry')
AttributeError: 'tuple' object has no attribute 'extend'

以为是符号问题,第四行的逗号去掉,运行:
Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\李昊恩Python\test6.24", line 4, in <module>
    field.extend('physics','chemistry')
TypeError: extend() takes exactly one argument (2 given)


求大神解答!!!

回复

使用道具 举报

0

主题

487

帖子

487

积分

骑士

积分
487
sheeboard 发表于 2019-5-15 10:05:41 | 显示全部楼层
field.extend(['physics','chemistry'])
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
HYE 发表于 2019-5-17 23:07:05 | 显示全部楼层
extend() 这个函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表),
也就是你所写的程序里所有用到exctend()函数的地方,都要将里面的元素用列表[]装起来传给extend()函数 .
  eg:extend(["元素1","元素2"])
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
HYE 发表于 2019-5-17 23:24:04 | 显示全部楼层
本帖最后由 HYE 于 2019-5-17 23:32 编辑
HYE 发表于 2019-5-17 23:07
extend() 这个函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表),
也就是你所 ...

还有第三行代码最后的,逗号是多余的。而且要输出数据:print(mark)  记得加括号。
回复 支持 反对

使用道具 举报

5

主题

9

帖子

9

积分

贫民

积分
9
benson  楼主| 发表于 2019-5-18 10:10:44 | 显示全部楼层
问题已经解决,谢谢各位大神!
回复 支持 反对

使用道具 举报

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

本版积分规则

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