2010-05-22 3 views
-2

임의의 함수 (파이썬에서)를 사용하여 txt 목록에서 문자열을 선택하려면 어떻게해야합니까?Python의 임의 함수


내가 목록에서 무작위로 원하는 :

import random 
import sys 
filename = sys.argv[1] 
f = open(filename) 
f.close() 
print random.choice(f) 

이 코드는 괜찮아?

+2

선택에 대한 권리 소리가 난다. – Stephen

+1

적어도 질문을하기 전에 매우 훌륭한 문서를 보는 척하십시오. –

+0

제목을 편집하거나 질문에 따라 확장 할 수 있습니다. 쓰여진 것처럼 임의의 함수 자체에 대한 특정 문제에 대한 언급은 없습니다. – bernie

답변

3
> import random 
> list_of_strings = open(sys.argv[1]).readlines() 
> randomly_chosen_string = random.choice(list_of_strings) 
> help(random.choice) 
Help on method choice in module random: 

choice(self, seq) method of random.Random instance 
Choose a random element from a non-empty sequence. 
1
import random 

file = open("file.txt", "r") 
list = file.readlines() 
def getline(): 
    return list[random.randint(0,(len(list) - 1))] 

getline() 
+0

그 file.txt를 가정하는 것은 간결 – krzysz00

+0

한 일을하고, SO에 오신 것을 환영합니다 그 다음 BBB AAA처럼 CCC 등 ... (한 줄에 한 단어) 를 sonething 포함! 그러나'list()'는 파이썬에서 함수 이름이므로 변수 이름에'list'를 사용하지 마십시오. 또한 파일 읽기를 위해'with' 문을 조사해야합니다. :] –

+0

미안하지만, 파이썬에 대해 많이 모르겠다. 그리고 이것이 내 머리 속으로 들어가는 첫 번째 문제였다. BTW는 공통 리스프가 변수와 함수라는 목록에 질식하지 않는다는 것을 알았다. 왜 파이썬을 사용해야 하는가? – krzysz00