2011-11-22 4 views
0
변경 될 수 있습니다

오고 내 문자열 난 그냥 마지막 네 문자를 필요로 정말 어떤 길이 될 수있는 문자열의 마지막 네 문자를받는 방법 :길이가 파이썬

string = asdfPALD 
string = asddasdfBLCA 
+1

당신이 변수 이름 또는 문자열 내용을 원하십니까 "여보세요"생산 "엘", 생산? 후자는'yourString [-4 :]' – fardjad

답변

8

사용 string[-4:] :

string = "asdfPALD" 

string[-4:]'PALD'

0

당신은 사용할 수 있습니다 string[-4:]

문자열 끝에서부터 계산됩니다.

+0

입니다! 오타가 수정되었습니다. – djq

0

범위 지정을 동일 것인가?

str0 = asdfPALD 
chunk = str0[len(str0)-4:] 

경우 [:x][x:] 인덱스 x, 또는 인덱스 x에 이르기까지 캐릭터 라인의 끝까지의 문자열의 시작을 의미한다.

+0

'[-4 :]'를 사용하여'len()'을 호출 할 필요가 없습니다. –

4

파이썬은 긍적적이고 부정적인 인덱스를 가지고 있습니다. 음수 인덱스는 문자열의 끝에서 시작됩니다 (이미지에서 볼 수있는 것처럼). 따라서 문자열의 마지막 요소를 가져 오려면 (문자열의 길이에 관계없이) my_string[-1]이됩니다.

enter image description here

파이썬에서 문자열의 slice을 얻으려면, sintaxis는 i이 처음 지수이며 j는 (결과에 j을 포함하지 않고) 종료 인덱스 my_string[i:j]이다. 첫 번째 인덱스 ( i)를 생략하면 시작 (인덱스 0)부터 시작하여 마지막 인덱스 ( j)를 생략하면 문자열 끝까지 이동합니다. 이 문제를 알고

, 신속, 그 가정 문자열의 마지막 4 개 요소를 얻기 위해 수 있습니다, 당신은해야 할 것 : (색인 반대) 슬라이스의 더 나은 이해를 위해

my_string[-4:] 
+0

더 좋은 그림은 문자 사이의 틈새와 정렬되도록 색인 너비를 왼쪽으로 절반만큼 이동시킨 것입니다. 소세지 한 덩어리를 자르는 것처럼 만들기 - 소세지 한가운데가 아니라 두 소시지 사이에서하십시오. –

+0

좋은 제안 @ 존 마틴, 나는 실제로 이미지를 만들지 않았고, 그것은 'Google Python 클래스'에서 사용되었습니다. – juliomalegria

+0

좋은 제안 이었다면 왜 그것을 망쳤고 삭제 했습니까? 이미지 소스의 관련성은 무엇입니까? –

0

슬라이스 위치에 관해서는 인덱스가 아닌 생각하는 것이 도움이됩니다. 슬라이스는 요소 사이에서 잘라내어 만듭니다.

H e l l o 
| | | | | | 
0 1 2 3 4 5 
-5 -4 -3 -2 -1 

그래서 [1 : -1] [-4 :]

관련 문제