鱼C论坛

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

[已解决]求助 字符串

[复制链接]
发表于 2018-9-12 15:47:59 | 显示全部楼层 |阅读模式

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

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

x
while 1:
    print("请输入密码:",end="")
    str1=input("")
    if len(str1)>=1:
        for i in str1:
            if str1[i].isdigit()==1:
                sign0=1


为什么if str1[i].isdigit()==1:
这一句会报错,显示:string indices must be integers
最佳答案
2018-9-12 16:14:35
jerry111 发表于 2018-9-12 16:09
请问一下我这个代码哪里有用到数组,不明白,麻烦再细讲一下,谢谢,还有我这样写可以怎么改善让他可以运 ...

这个字符串是假的,实际上是用数组存储的~ str[i]  方括号一出来就是数组。然后到后面你就会发现连数组也是假的,实际上是链表……

你要做那个密码的题目吧?有点忘了,但你的方向好像跟题目的不一样
按照你目前的思维,应该没有理解错误,从字符串中选出数字,然后修该标志
for i in str1:
   if i.isdigit():
       sign0 = 1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-9-12 15:49:26 | 显示全部楼层
for i in str1: 哪里错的。 str1 是字符串, for i in str1,全是字符……
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-12 15:53:10 | 显示全部楼层
claws0n 发表于 2018-9-12 15:49
for i in str1: 哪里错的。 str1 是字符串, for i in str1,全是字符……

还不是很明白,求教。。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-12 16:00:06 | 显示全部楼层
jerry111 发表于 2018-9-12 15:53
还不是很明白,求教。。。。

试试以下代码
for i in range(5):
    print(i)

for i in ''abcde":
    print(i)

数组的下标只允许用整数。就是这样
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-12 16:01:52 | 显示全部楼层
我的想法是输入字符串str1后,用isdigit()去检验str1中的每一位,只要字符串中出现数字,就使标志位为sign为1,但是报错说:字符串索引必须是整数
是isdigit()不能这样使用还是什么其他原因
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-9-12 16:09:17 | 显示全部楼层
claws0n 发表于 2018-9-12 16:00
试试以下代码
for i in range(5):
    print(i)

请问一下我这个代码哪里有用到数组,不明白,麻烦再细讲一下,谢谢,还有我这样写可以怎么改善让他可以运行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-9-12 16:14:35 | 显示全部楼层    本楼为最佳答案   
jerry111 发表于 2018-9-12 16:09
请问一下我这个代码哪里有用到数组,不明白,麻烦再细讲一下,谢谢,还有我这样写可以怎么改善让他可以运 ...

这个字符串是假的,实际上是用数组存储的~ str[i]  方括号一出来就是数组。然后到后面你就会发现连数组也是假的,实际上是链表……

你要做那个密码的题目吧?有点忘了,但你的方向好像跟题目的不一样
按照你目前的思维,应该没有理解错误,从字符串中选出数字,然后修该标志
for i in str1:
   if i.isdigit():
       sign0 = 1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2018-9-12 16:33:26 | 显示全部楼层
claws0n 发表于 2018-9-12 16:14
这个字符串是假的,实际上是用数组存储的~ str  方括号一出来就是数组。然后到后面你就会发现连数组也是 ...


有点明白了,我没有区分数组和字符串,谢谢
我做的就是你说的那个题目
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-22 09:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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