all_user_name = input("請輸入名字:")
len_s = len (all_user_name)
start = 0
for i in range(len_s) :
if all_user_name[i] == " ":
all_user_name=all_user_name[start:i-1]
print("Hi"+all_user_name)
start = i+1
可以請各路大神幫小弟找出所寫的程式到底哪裡出了問題?
all_user_name = input("請輸入名字:")
print(type(all_user_name ))
lst = all_user_name.split()
print(type(lst))
print(lst)
for elem in lst:
print('Hi ', elem)
上面的程式,額外印出了型態,讓你觀察.
你的程式,你想要用空白去判斷,但是你捨不得多用個變數,
all_user_name=all_user_name[start:i-1] 那你左邊的all_user_name 會不會受到影響?
你再思考一下,看能不能自己修改好.
另外說句額外的,你的書是哪一本? 最近好多學生問作業,但都是這種風格,輸入字串的.
謝謝你的回答,我在修改看看。
我是用旗標出版的<用Python學運算思維>
用圖片補充說明「變數使用的問題」
一級屠豬士 由於這是單元18「用 for 迴圈走訪容器中的元素」,主要是練習 for 的使用
user_name = 'Zoe Xander Young'
for i in range(len(user_name)):
if user_name[i] == ' ':
print()
else:
print(user_name[i], end='')
print()
那就改用 for 來跑一下,那個變數名字取太長啦,改成短一點的.
既然都要求輸入一樣的了,那就不輸入啦,直接給值.