2

Python で文字列を反復処理する方法がわかりません。私の目標は、文字列の特定のポイントまで反復し、その反復ポイントの後に残りの要素を削除して、部分文字列を操作することです。

たとえば、str1 という文字列があるとします。str1 = "8493 2020" また、反復する範囲を指定する数値があるとします。a = 4

str1 を a まで繰り返し処理し、a の後のすべての文字を削除するにはどうすればよいですか?

これを試してみましたが、「TypeError: 'str' object is not callable」という構文エラーが発生しました:

for i in str1(range(a)): 
    print i 
4

4 に答える 4

4

スライスを反復処理できます。

>>> str1 = "8493 2020"
>>> a = 4
>>> for i in str1[:a]:
        print i


8
4
9
3

新しい文字列を作成する必要がある場合は、そのまま実行してください。

>>> b = str1[:a]
>>> b
'8493'
于 2013-08-15T20:18:04.290 に答える
1

目的のインデックスまで繰り返します。

>>> str1 = "8493 2020"
>>> a = 4
>>> for i in str1[:a]:
...     print i
...
8
4
9
3

そのインデックスまでのすべてを削除します。

>>> str1 = str1[:a]
>>> str1
'8493'
于 2013-08-15T20:19:44.990 に答える
0
s = 'my string'
stop_idx = 3
print s[:stop_idx] # prints "my "
于 2013-08-15T20:18:15.843 に答える