問題があります。実行するたびに最大 30 文字を含む文字列のみを取得したいのです。
import random
test=["test1 up to 30 characters",
"test2 passing 30 characters easy",
"test3 up to 30 characters",
"test4 passing 30 characters easy"]
random.shuffle(test)
if len(test[0]) <= 30:
print test[0]
elif len(test[0]) >= 30:
print "Shit"
print len(test[0])
編集:************************************************ ****************************
テストでは、次のような変数があります。
import random
test=["test1 up to "+variable+" characters",
"test2 passing "+variable+" characters easy",
"test3 up to "+variable+" characters",
"test4 passing "+variable+" characters easy"]
random.shuffle(test)
if len(test[0]) <= 30:
print test[0]
elif len(test[0]) >= 30:
print "Shit"
print len(test[0])
その変数は、5 からわからない、10 までの混合文字数になります。
プログラムに、合計で最大 30 文字を含むリストから文字列を選択させたいと考えています。あなたのソリューションは、最大 30 文字の文字列を含むものを出力するだけです。戻って、毎回すべての変数に対して合計 30 文字を与えるリスト内の文字列を見つけてください。理解していただければ幸いです。私は自分自身を理解するのに苦労しています。
編集 ************************************************* ******************************
わかりました、私はこれをしました:
import random
test=["test1 up to 30 characters",
"test2 passing 30 characters easy",
"test3 up to 30 characters",
"test4 passing 30 characters easy"]
random.shuffle(test)
print [x for x in test[0:1] if len(x) < 30]
それは私が望むことをしますが、空の[]のように空白になります