ファイルを取り出して各単語の中文字をシャッフルする必要がありますが、最初と最後の文字をシャッフルすることはできません。 。すべての文字が区切られた別々のリストに各単語を入れることができれば、それらをシャッフルする方法を見つけ出すことができると思います。どんな助けもありがとう。ありがとう。ファイルを取り込んで中間の文字をシャッフルする
0
A
答えて
3
text = "Take in a file and shuffle all the middle letters in between"
words = text.split()
def shuffle(word):
# get your word as a list
word = list(word)
# perform the shuffle operation
# return the list as a string
word = ''.join(word)
return word
for word in words:
if len(word) > 3:
print word[0] + ' ' + shuffle(word[1:-1]) + ' ' + word[-1]
else:
print word
シャッフルアルゴリズムは意図的に実装されていません。
0
random.shuffleを見てください。あなたが目指すもののように見えるリストオブジェクトをシャッフルします。あなただけだから、あなたがしようとしたものを
+0
ありがとう。 Random.shuffleはとても役に立ちました=) – Albo
0
#with open("words.txt",'w') as f:
# f.write("one two three four five\nsix seven eight nine")
def get_words(f):
for line in f:
for word in line.split():
yield word
import random
def shuffle_word(word):
if len(word)>3:
word=list(word)
middle=word[1:-1]
random.shuffle(middle)
word[1:-1]=middle
word="".join(word)
return word
with open("words.txt") as f:
#print list(get_words(f))
#['one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
#print map(shuffle_word,get_words(f))
#['one', 'two', 'trhee', 'four', 'fvie', 'six', 'sveen', 'eihgt', 'nnie']
import tempfile
with tempfile.NamedTemporaryFile(delete=False) as tmp:
tmp.write(" ".join(map(shuffle_word,get_words(f))))
fname=tmp.name
import shutil
shutil.move(fname,"words.txt")
+0
改行文字を保存したくないと思っていました。あなたがした場合は、単純にget_words() –
関連する問題
- 1. シャッフル文字列
- 2. シードで文字列をシャッフルする
- 3. 奇数の長さの文字列の中間3文字を取得する
- 4. Pythonで2文字間の文字列を取得する
- 5. 文字列をファイルに書き込んでいます...(iPhone SDK)
- 6. PHPの単語の文字をシャッフルする方法
- 7. 中間ファイルの削除を取り消す方法
- 8. Javaのファイルを区切り文字で読み取る
- 9. mysqlの文字列の中間部分を取得する方法
- 10. 区切り文字で文字列を検索するファイル
- 11. C:コマンドラインの特殊文字を文字列に取り込む方法
- 12. MVC2.0でHTMLを文字列に取り込む
- 13. スプリングブートでJson文字列配列を取り込む方法
- 14. C#ファイルの内容を読み込んで文字列を見つける
- 15. C++でNULL文字を文字列の中に埋め込む方法は?
- 16. DBまたはファイルからページを取り込むクエリ文字列
- 17. ファイルの読み込みで特殊文字を無視する
- 18. クエリ文字列の中間セクションをトリミングする方法は?
- 19. MySQLで文字を切り取る
- 20. .txtファイルから読み込ん数や文字列を置換
- 21. 部分文字列を取得する方法は、文字列の山括弧の中にあります
- 22. NSString埋め込み/文字間のスペース
- 23. Androidでフォントの文字間隔を取得する
- 24. select文中のポストグル中の文字列からzwnj文字を削除する
- 25. 1.5GBのXMLファイルをOutOfMemoryErrorなしで読み込んで文字列に割り当てる方法は?
- 26. Unix:文字列を正規表現の区切り文字で切り取る
- 27. 文字列中のすべての中間文字を置き換えます。C++
- 28. Java - パラメータで文字列を書き込んだり読んだり修正したりする
- 29. コンテンツを文字列として取り込む方法は?
- 30. 文字列を配列に取り込む
ランダムにインポートすることを忘れないでください
'
の周りに文字をシャッフルするために、このような何かを行うことができますか?正確にどこに問題がありますか?それを打ち砕いて、それをコードしようとする - 本当の質問に答えるのは立っているからです。 – Yuushi