【发布时间】:2019-11-16 22:32:50
【问题描述】:
如何以随机顺序仅打印文本文件中的每一行一次?
我有一个包含六个单独行的文本文件,我正在尝试将它们随机打印到屏幕上
这是我目前的代码
open Scanf
open Printf
let id x = x
let const x = fun _ -> x
let read_line file = fscanf file "%s@\n" id
let is_eof file = try fscanf file "%0c" (const false) with End_of_file -> true
let _ =
let file = open_in "text.txt" in
while not (is_eof file) do
let s = read_line file in
printf "%s\n" s
done;
close_in file
我可以将元素“s”附加到列表中。打印列表中的元素可以很简单,但是我不确定如何随机打印列表中的元素。
let rec print_list = function
[] -> ()
| e::l -> print_int e ; print_string " " ; print_list l
【问题讨论】:
标签: ocaml