2016-01-23 42 views
-1

下面的輸出應該沒有空格嗎?輸出應該是一樣的,一個是整個string.why會發生這種情況?如何達到所要求的結果,順便說一句是新來的蟒蛇一個字符串打印時應該不應該有空格,不應該有空格

print ('this addWeaponCargo ["srifle_DMR_01_DMS_F", 4];')   #  expected print 
print (add_weapon_to_vehicle,'["',Rahim,'"',",",Quantity,']',';') # this is output should be like the one at the top , why are there spaces ? 

輸出

this addWeaponCargo ["srifle_DMR_01_DMS_F", 4]; 
this addWeaponCargo [" srifle_DMR_01_DMS_F " , 4 ] ; 

回答

1

print會把在提供的參數之間的空間,所以:

print('a','b') # prints: a b 

您可以與+操作串連的部分,或使用格式字符串:

print('{0} ["{1}", {2}];'.format(add_weapon_to_vehicle, Rahim, Quantity)) 
0

Python 3中的print功能有一個關鍵字,只parmeter稱爲sep它放在如果有一個以上的它傳遞的參數之間。默認情況下,sep是一個空格,但如果需要,可以更改它。

這聽起來像你想要沒有空格,所以sep="",將分隔符設置爲空字符串。嘗試:

print(add_weapon_to_vehicle, '["',Rahim, '"', ",", Quantity, ']', ';', sep="") 

hege_hegedus的答案使用字符串格式化提示也是一個不錯的一個,因爲它簡化了很多東西,當你有兩個可變的部分,你的字符串輸出的常量部分(例如,您的逗號,括號,和上面的print調用中的分號都是常量)。

相關問題