Python: как сохранить только первые 50 символов строки

#python #string

#python #строка

Вопрос:

У меня есть строка, которая

 x = "very_long_string_more_than_50_char_long"
  

Я хочу сохранить только первые 50 символов и удалить остальные.
как бы я это сделал?

Спасибо

Ответ №1:

 x = x[:50]
  

Для получения подробной информации о подобных фрагментах обратитесь к документации.

Комментарии:

1. как вы опубликовали ответ короче, чем 30 символов?%)

2. или даже просто x[:50] … да, @larsks опередил меня в этом

3. @larsks опередил вас в упрощении ;). Ты тоже бесполезен. Адриан Плиссон, ты тоже 😉

4. @Guard Добавить <img/><img/><img/><img/><img/><img/><img/><img/> к ответу.

5. @phihag вы также можете добавить <!-- blablablablablablablablablablablablablablablabla --> , что чище.

Ответ №2:

используйте мощный механизм нарезки:

 x = x[:50]
  

Комментарии:

1. один вопрос: при нарезке, если у меня есть x [a,b], означает ли это, что оно начинается с a (включая a) и заканчивается на b (но не включает b)?

2. Попробуйте! a=[1,2,3,4,5,6] а затем print a[1:3] и посмотрите, что вы получите!

Ответ №3:

Вы могли бы использовать нарезку

 x = "very_long_string_more_than_50_char_long"
print x[0:50]
  

Комментарии:

1. что означает o в x[0:50]?

2. @Sunny Это ноль и указывает начальную позицию. Например, 'very_long_string'[1:4] это 'ery'

3. спасибо, в последнем примере результат будет «ery_», верно?

4. @Sunny Нет, второе число — это позиция первого элемента, который не следует включать в результат.

5. таким образом, [a,b] означает, что начинается с a (включая a) и заканчивается на b (но не включает b).

Ответ №4:

 >>> x = "fooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo"
>>> len(x)
70

>>> y = x[:50]

>>> len(y)
50
>>> y
'fooooooooooooooooooooooooooooooooooooooooooooooooo'
  

Комментарии:

1. 1 для "fooooooooetc" . В некотором роде это сделало мое утро. Может быть, потому, что он точно соответствует ширине столбца?