为什么输入3就可以运行 ,9就显示错误呢 谢谢

为什么输入3就可以运行 ,9就显示错误呢 谢谢

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
慕丝2367125 2019-11-18 16:43:56

“{0}月是春季”里面的‘0’指的是参数索引,指的是format(参数0)。而其实这里所有的format里面都是只有一个‘参数0’的,所以把‘{1或2或3}月’改成‘{0}月’就行了

好帮手乔木 2019-11-07 09:43:08

同学你好:

format()格式化,{}接收的是format()括号中的参数。索引则是参数列表中的参数的位置

同学format()括号中的参数只有·一个,那么索引就是0,而且这个参数month是控制台输入的值,和月份列表没有关系。

http://img1.sycdn.imooc.com//climg/5dc374a50980550208440738.jpg

举例:

http://img1.sycdn.imooc.com//climg/5dc3766509a91f8a07350360.jpg

如果我解决了同学的问题,请采纳!学习愉快^_^。

  • 提问者 冷雨天兵 #1
    那就是说如果有列表数据的话,大括号里都是填0索引??
    2019-11-07 10:09:24
  • 好帮手乔木 回复 提问者 冷雨天兵 #2
    同学你好:使用format()方法格式化{}中传的索引的原则:1、 索引都是从0开始的。 2、 索引的范围是 0到format()括号中参数的个数减1。例如上面的举例,参数的个数有3个,那么索引的范围是0-2。3、{}填的索引是索引范围内的索引。如果索引的范围是0-2,那么同学可以填的索引为0、1、2。学习愉快^_^。
    2019-11-07 10:30:48
  • 慕桂英小七 回复 提问者 冷雨天兵 #3
    不是,建议查看一下手册,str.format(),索引的范围跟你有几个替换变量有关。上面代码每次print("{}月是秋季".format(month)),这句代码始终只有一个要替换就是month,所以索引只为0 加入这么写print("{1}年{0}月是秋季".format(year,month)) 这个有2个变量,索引最大可以为1
    2019-11-14 13:44:30
好帮手乔木 2019-11-04 14:14:33

同学你好:

http://img1.sycdn.imooc.com//climg/5dbfc149092187c204680327.jpg

使用format,索引从0开始,同学的索引超出范围,因此报错。

解决:所有的索引改为0即可。

如果我解决了同学的问题,请采纳!学习愉快^_^。

  • 提问者 冷雨天兵 #1
    那个不是索引的0123吗,为什么都要改为0,0只是指345月份啊
    2019-11-05 11:03:50
  • 好帮手乔木 回复 提问者 冷雨天兵 #2
    同学你好:索引的个数对应的是format方法传递的参数的个数,同学的每一个format函数的参数只有一个,那么索引(从0开始)只有一个0。按照同学的1 2 3 都是超出了对应的索引范围。如果我解决了同学的问题,请采纳!学习愉快^_^。
    2019-11-05 12:01:14
  • 提问者 冷雨天兵 回复 好帮手乔木 #3
    但是那个678月份是属于2的索引里啊
    2019-11-07 06:56:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师