技术原理

【python封招系列产品】无需字串內建的split()涵数,怎样激光切割字串?原先基本英语的语法这幺强劲

哈啰~ 各位好!,
今日来给大伙儿演试【python封招系列产品】,
怎样无需字串內建的split()涵数来激光切割字串

看更多封招系列产品,返回主页: 【python封招系列产品】仅用基本英语的语法可以解除程序难题吗? #新手一定也能看懂 #热烈欢迎留言板留言互动交流

题型: 小乌龟教师的点名单

参照题型: zerojudge- c186: 小乌龟教师的点名单

文题: 键入让你一个字串,以空格符把字串割开
範例:

键入表明: 键入只能一行,带有 n  个 (1 ≤ n ≤ 30) 以空白页分隔的学员姓名。全部姓名均由英文字母构成。
範例键入: John Mary Steve David
輸出表明: 将每一个姓名独立印出一行。
範例輸出:
John
Mary
Steve
David

解题思路演试(不只对你说回答,还对你说怎幺去想题型)

见到这个问题,
确实特想立即用字串內建的split()涵数立即解,

names = input().split()
for name in names:
    print(name)

input().split()会读进去的字串John Mary Steve David
切成['John', 'Mary', 'Steve', 'David']
再用for迴圈印出就可以了,比较简单

可是,如今小龙教师为自己封招挑戰(立在入门的观点,学好基本英语的语法并不了解有内建函数split()可以用),
小龙只有把字串读进去

names = input() #读进John Mary Steve David

不可以立即激光切割字串,
哎哟,仿佛确实有点儿难,
确实有封号到的觉得啊…

还行,for迴圈還是可以用的,
试一试用for迴圈读字串吧:

names = input() #读进John Mary Steve David
for c in names:
    print(c)

結果(每个字元印出一行):

J
o
h
n
M
a
r
y
S
t
e
v
e
D
a
v
i
d

要是对字串用for迴圈,就可以读完每个字元了嘛

那小龙想起了,
先宣布一个空的字串name来存姓名
在学字串的全过程,
假如读完的字元并不是空格符,就往name后边加上字元,
读完的字元是空格符得话,就把name印出,
觉得十分有效

试着的程式码

names = input() #读进John Mary Steve David
name = ""
for c in names:
    if c!=' ':
        name = name   c
    else:
        print(name)

結果:

John
JohnMary
JohnMarySteve

嗯…这一…仿佛有点儿贴近我们要的結果了,
可是印出的姓名都粘到一起了,
最后一个人名David也没印到
啊… 在学到空格符的情况下要把本来的字串清除,
for迴圈完毕后,再印一次姓名就可以

小龙的挑戰(封招,AC)

names = input() #读进John Mary Steve David
name = ""
for c in names:
    if c!=' ':
        name = name   c
    else:
        print(name)
        name = ""   
print(name)

好的,今日的封招挑戰取得成功啦,
恭贺小龙游戏玩家习得字串内建函数split()专业技能
下回见

你也可能喜欢

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片
人工智能编程培训书籍推荐 投稿者
我还没有学会写个人说明!
最近文章
  • * 没有更多文章了
  • 热门搜索

    分类目录