2

今、ここに私のコードがあります:

name = raw_input("Please enter your name: ")
nameList = list(name)
del nameList[1]
newName = str(nameList)
print"Your new name is: " + str(newName) + "."

このコードを使用すると、文字列に変換したにもかかわらず、最後の行にnewNameがリストのように出力されるという問題があります。

Your new name is: ['j', 'k', 'e'].

この新しい名前を通常のテキストのように表示したいと思います。私は何が間違っているのですか?

ありがとう。

4

3 に答える 3

5

join文字列メソッドを使用してリストの要素を連結したいと思います。

>>> new_name = ['j', 'k', 'e']
>>> print ''.join(new_name)
jke

または、文字列をリストに変換せず、文字列操作を使用して目的を達成します。

>>> name = 'jake'
>>> new_name = name[:1] + name[2:]
>>> print new_name
jke
于 2012-08-14T01:01:45.567 に答える
2

私は少しの間コードをいじりました。これを試して:

name = raw_input("Please enter your name: ")
nameList = list(name)
del nameList[1]
test = ''.join(nameList)
print"Your new name is: " + test + "."

それが役に立てば幸い。(:

于 2012-08-14T01:32:01.860 に答える
1
>>> import string
>>> v = string.ascii_uppercase[:20]
>>> v
 'ABCDEFGHIJKLMNOPQRST'
>>> v = list(v)
>>> v[:10]
  ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']

>>> v1 = ''.join(v)
>>> v1
  'ABCDEFGHIJKLMNOPQRST'

または、1行のコードで(ユーザー入力を取得して変数にバインドした後)、最初の行の後に必要なことを実行できると思います。

print("name is {0}{1}".format(name[:1], name[2:]))
于 2012-08-14T01:04:51.713 に答える