2017-03-27 29 views
0

考虑以下几点:如何正确使用Python .format()?

user_ = socket.gethostname() 
runtime_ = time.ctime() 
game_days = 'season open' 
variable = 'speed' 
start_time = datetime.time(15, 0) 
weekdays = 'all days' 
period = ['1/1/2013', '1/1/2020'] 

如何使用.format()看到this。为了得到这个输出

print(tag) 

User-WS, Mon Mar 27 07:30:08 2017 US/Central - season open 
Variable: speed At: 15:00. all days 1/1/2013:1/1/2020 
-------------------------------------------------------- 

现在我做:

tag = user_ + ', ' + runtime_ + ' US/Central - ' + game_days + '\n' + 'Variable: ' + \ 
variable + ' At: ' + str(start_time)[:-3] + '. ' + weekdays + ' ' + period[0] + ':' + period[1] + '\n' + \ 
'--------------------------------------------------------' 
+1

你有什么试过?一般来说,只需用占位符替换当前的''+ name +'',就可以从串联转为格式化,因此您只有一个字符串,然后将所有名称传递给'.format'。这没有用吗? – jonrsharpe

回答

2
s = '{}, {}, US/Central - {}\nVariable: {}, At: {}. {} {}:{}\n--------------------------------------------------------' 

tag = s.format(user_, runtime_ game_days, variable, str(start_time)[:-3], weekdays, period[0],period[1]) 

这是你挂一个非常彻底的教程中,我不知道一些这一点。你特别努力的是什么?

相关问题