免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 18969 | 回复: 2

python变量问题 [复制链接]

论坛徽章:
2
IT运维版块每日发帖之星
日期:2016-01-17 06:20:00IT运维版块每日发帖之星
日期:2016-07-10 06:20:00
发表于 2020-05-22 16:37 |显示全部楼层
本帖最后由 fengdoudm 于 2020-05-22 16:41 编辑

好久没有发帖了,今天碰到一个python的小问题,请看图

执行后报错信息

虽然我知道怎么写可以不报错,但我不理解这样写为什么会报错,麻烦各位大神指点一二,不胜感激

1.png

报错信息

报错信息

论坛徽章:
2
IT运维版块每日发帖之星
日期:2016-01-17 06:20:00IT运维版块每日发帖之星
日期:2016-07-10 06:20:00
发表于 2020-05-25 10:13 |显示全部楼层
回复 1# fengdoudm 没有人回答吗,,这个不是数组越界的问题,读取的内容是没有什么问题的
文件的内如是这样的
  1. 172.16.0.9 china
复制代码


我感觉是变量赋值的问题,
public_ip = f.readlines()[0]
这行赋值后,f.readlines()获取的内容就变成了空值,所以后面一行执行的时候就显示数据越界了
但我不明白赋值之后怎么就变成了空值了,烦请大神指点下,谢谢。

论坛徽章:
0
发表于 2021-06-08 11:52 |显示全部楼层
看来你基础没学好,文本指针了解一下
with open('help3.txt','r') as f:
    print(f.tell())   #打印指针位置,结果0
    line1=f.readlines()[0]   #指针读取完成到最后位置
    print(line1)                  #打印行
    print(f.tell())                #大一指针位置,指针显示已经到最后191
    f.seek(0)                     #设置指针位置到0
    print(f.tell())                #查看指针位置,0
    line2=f.readlines()[1]   #打印1的结果,指针又到最后191
    print(line2)                  #打印行
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP