2011-10-07 12 views
1

我剛開始學習Python(作爲第一語言,所以我幾乎無所知)並遇到了這個問題。Python:查找並指向字符串的中點

找到一個單詞的中點,並使用插入符號「^」指向它。

例,

Computer 
^

感謝您的任何提示任何人都可以給我。

+4

這功課嗎? – NPE

+0

是的,所以我不想要確切的代碼。請指出我正確的方向。 – apichel

回答

2
text='Computer' 
print(text) 
print('{0:^{1}}'.format('^',len(text))) 
  • {0:...}告訴format,以取代第一 說法,'^'替換本身。
  • {1}被替換爲第二個參數len(text)
  • ^{1}告訴format居中文本,並使總寬度 等於len(text)

因此the docs爲格式的完整規格。

+1

請注意,str.format只存在於Py 2.7+ – Triptych

+4

'str.format'存在於Python 2.6或更高版本中。 – unutbu

+0

這只是要去到文本的中心。所以它確實解決了我的問題,但是如果我想要說下一個字的第二個字母,我將不得不採用不同的方式來解決它。 – apichel

6

使用len,它找到對象的長度。

>>> x = "Computer" 
>>> x[len(x)/2 - 1] 
'p' 

-

# a.py 
x = "Computer" 
print x 
print (" " * (len(x)/2 - 1)) + "^" 

# % python a.py 
Computer 
^
0

中點取決於字符串的奇數或偶數長度。因此,如果它是一個奇數的長度,那麼如果中間長度是偶數,那麼中間將完全是len/2 + 1 ,您應該決定什麼是中間的(len/2或len/2 +1)

x="Computer" 

if len(x)%2: return x[len(x)/2+1] 

else: return x[len(x)/2]