Python'da bir döngü kullanılmadan bir dizeyi 2 eşit yarıya ayırmanın bir yolu var mı?Python'da bir dizgiyi 2'ye bölme
19
A
cevap
41
firstpart, secondpart = string[:len(string)/2], string[len(string)/2:]
5
a,b = given_str[:len(given_str)/2], given_str[len(given_str)/2:]
0
Başka bir olası bir yaklaşım divmod kullanmaktır. rem, orta karakteri öne eklemek için kullanılır (tek ise). Python 3
def split(s):
half, rem = divmod(len(s), 2)
return s[:half + rem], s[half + rem:]
frontA, backA = split('abcde')
0
:
İsterseniz
bayan => ma d am
Majesteleri => ma duyuyorum
first_half = s[0:len(s)//2]
second_half = s[len(s)//2 if len(s)%2 == 0 else ((len(s)//2)+1):]
Hatta 'firstpart, secondpart = dize [gibi bir şey :: 2], string [1 :: 2] 'den beri soru, parçaların bitişik olması gerektiğini belirtmedi. – Duncan
@Duncan, :) iyi bir cevap .. :) –
python3: 'firstpart, secondpart = string [: len (string) // 2], string [len (string) // 2:]' – Omid