まず最初に、私が作成したこの単純なスクリプトには実際のアプリケーションがない可能性があることを述べたいと思いますが、私は学習中であり、ここ SO で同様のものを見つけることができなかったので、それを行いました。リストのようなイテラブル内の文字を「任意に」変更するにはどうすればよいか知りたかったのです。
確かtile()
に、私は比較的すぐに習得した便利なツールですが、キックのために、代わりに最後の文字をフォーマット (大文字) したい場合はどうすればよいか考えなければなりませんでした。または3番目、中間のものなど。小文字はどうする?特定の文字を他の文字に置き換えますか?
私が言ったように、これは確かに完璧ではありませんが、私のような他の初心者に思考の糧を与えることができます. さらに、これを何百もの方法で変更して、あらゆる種類の異なるフォーマットを実現できると思います。
今やったことを改善するのを手伝ってくれませんか?それをもっと無駄のないものにしてみませんか?スタイル、方法、効率などのチェック...
ここに行きます:
words = ['house', 'flower', 'tree'] #string list
counter = 0 #counter to iterate over the items in list
chars = 4 #character position in string (0,1,2...)
for counter in range (0,len(words)):
while counter < len(words):
z = list(words[counter]) # z is a temp list created to slice words
if len(z) > chars: # to compare char position and z length
upper = [k.upper() for k in z[chars]] # string formatting EX: uppercase
z[chars] = upper [0] # replace formatted character with original
words[counter] = ("".join(z)) # convert and replace temp list back into original word str list
counter +=1
else:
break
print (words)
['housE', 'flowEr', 'tree']