Elixir로 진행 표시하고 싶습니다!
10063 단어 Elixir
소개
@kuroitu 님의 파이썬으로 진행하고 싶습니다!
0. 준비
진행률 막대 만들기을 설치합시다
소스 코드 작성
progress.exs
파일을 그냥 만들기만 합니다.progress.exs
f = fn
n when is_integer(n) -> Process.sleep(n)
s -> IO.write("\r[#{s}]")
end
1..50
|> Enum.map(&String.duplicate("#", &1))
|> Enum.intersperse(100)
|> Enum.each(&f.(&1))
f
에 묶인 익명 함수는 인수가 정수 일 때 설치을 실행하여 잠자기합니다.\r
가 출력하는 문자열의 시작 부분에 있다는 점입니다 1..50
로 시작하는 행에서는 다음의 함수나 Pipe operator IO.write/1 를 사용해 기분 좋게 쓰고 있습니다Enum.intersperse(100)
를 실행하면 다음과 같은 목록이 있습니다 ["#", 100, "##", 100, "###", 100, "####", 100, "#####", 100, "######", 100,
"#######", 100, "########", 100, "#########", 100, "##########", 100,
"###########", 100, "############", 100, "#############", 100,
"##############", 100, "###############", 100, "################", 100,
"#################", 100, "##################", 100, "###################",
100, "####################", 100, "#####################", 100,
"######################", 100, "#######################", 100,
"########################", 100, "#########################", 100, ...]
100
가 번갈아 들어있는 목록입니다.progress.exs
1..50
|> Enum.map(&String.duplicate("#", &1))
|> Enum.intersperse(100)
|> IO.inspect()
|> Enum.each(&f.(&1))
실행하다
$ elixir progress.exs
IO.inspect/1
Wrapping Up
$ elixir progress.exs
Reference
이 문제에 관하여(Elixir로 진행 표시하고 싶습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/torifukukaiou/items/f8bf74c3c8d6af89a3e7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)