一道题:获得用户输入的一个数字,其中数字字符(0到9)用对应中文字符“〇一二三四五六七八九”替换,输出替换后的结果。
答案为:
n=input()
s="〇一二三四五六七八九"
for c in "0123456789":
n=n.replace(c,s[int(c):int(c)+1])
print(n)
一直对int函数不懂,这里更不懂为什么replace括号里的s[int(c):int(c)+1]是啥意思了。
编程小白TAT
求大佬指教!!!!
一道题:获得用户输入的一个数字,其中数字字符(0到9)用对应中文字符“〇一二三四五六七八九”替换,输出替换后的结果。
答案为:
n=input()
s="〇一二三四五六七八九"
for c in "0123456789":
n=n.replace(c,s[int(c):int(c)+1])
print(n)
一直对int函数不懂,这里更不懂为什么replace括号里的s[int(c):int(c)+1]是啥意思了。
编程小白TAT
求大佬指教!!!!
遍历“0123456789”的时候c是str类型,int是为了把str转为int
s[int(c):int(c)+1] 这里好像没必要用切片 直接s[int(c)]就好了
对于一个序列来说,比如s = “123456”
切片s[1:3]的结果是“23”,也就是变量s下标[1,3)区间元素,前闭后开。
s[start:end:step]这种形式叫做切片,可以找相关内容看一下。