Erlang學習記錄 輸入和輸出

2022-05-11 13:25:09 字數 2894 閱讀 8148

輸入和輸出功能都被定義在io模組

輸出功能非常常用,由於erlang專案沒有可斷點除錯的ide(或者說根本不需要),所以所有的除錯操作都是由io輸出 來除錯的

io:get_line/1.

​ 引數:輸入提示

​ 獲取標準輸入,回車結束,

io:get_chars/2.

​ 引數:輸入提示,跳過字元數量

​ 獲取輸入字元,獲取的字元不包含跳過數量的字元

io:read/1

​ 引數:輸入提示

​ 從shell面板讀取乙個項元,項元必須是乙個明確的值,而不是乙個表示式

io:write/1

​ 列印輸出乙個項元

io:format/1

直接輸出一段文字

io:format/2

​ 引數:格式化的字串/二進位制,解析列表,列表,列表

​ 格式化輸出一段文字

​ 格式化的佔位符(控制格式化的序列,簡稱:控制序列)以「~」開頭,後面的稱之為填充字元

​ 完美的控制序列型是為f.p.padc,其中f為輸出寬度(長度和格式,+10表示左對齊10位長度,-10表示右對齊10位長度,內容長度不足時使用pad填充),p為輸出精度,即擷取原輸出文字的長度,當p大於原文本昌都市,使用pad填充,pad是填充字元,只能是乙個字元,預設空格,c是控制字元,如:40p~n

控制序列表:

符號說明

~c輸出乙個字元的ascii碼

~f輸出乙個有6位小數點的浮點數

~e輸出乙個以科學記數法表示的共6位的浮點數

~w以標準語法從輸出任何項元(也就是term),常被用於輸出erlang資料型別

~p類似~w,但是會在適當的地方換行和縮排,並嘗試將列表作為字串輸出

w、p類似w和p,但是限制結構深度為3

~b輸出乙個十進位制整數

~n換行

~s列印乙個字串,i/o列表或原子,列印時不帶引號

~w深度示例

> io:format("~w",[[z,h,c],3]).

[z,h|...]ok

> io:format("~w",[[z,h,c],2]).

[z|...]ok

> io:format("~w",[[z,h,c],1]).

[...]ok

> io:format("~w---~w",[[z,h,c],1,[a,b,c],2]).

[...]---[a|...]ok

> f(list).

ok > list = [2,3,math:pi()].

[2,3,3.141592653589793]

> f(sum).

ok> sum = lists:sum(list).

8.141592653589793

> io:format("hello,world!~n",).

hello,world!

ok> io:format("the sum of ~w is ~w.~n",[[2,3,4],demo:sum([2,3,4])]).

the sum of [2,3,4] is 9.

ok> io:format("the sum of ~w is ~.2f.~n",[list,3,sum]).

the sum of [2,3|...] is 8.14.

ok ["the sum of ~w is ~.2f.~n",

[[2,3,3.141592653589793],

3,8.141592653589793]]}

ok> io:format("|~-4s|",[abc]). % |abc |ok

> io:format("|~-10s|",[abc]). % |abc |ok

> io:format("|~-10.0.+s|",[abc]). % |++++++++++|ok

> io:format("|~-10.1.+s|",[abc]). % |a+++++++++|ok

> io:format("|~-10.2.+s|",[abc]). % |ab++++++++|ok

> io:format("|~-10.10.+s|",[abc]). % |abc+++++++|ok

> io:format("|~4s|",[abc]). % | abc|ok

> io:format("|~10s|",[abc]). % | abc|ok

> io:format("|~10.0.+s|",[abc]). % |++++++++++|ok

> io:format("|~10.1.+s|",[abc]). % |+++++++++a|ok

> io:format("|~10.7.+s|",[abc]). % |+++abc++++|ok

> io:format("|~10.10.+s|",[abc]). % |+++++++abc|ok

io:format/3

​ 引數:輸出檔案流(需要輸出到的程序識別符號,file:open(file,write)的返回值)/格式化的字串/二進位制,解析列表,列表,列表

​ 往輸出檔案流中輸出(寫出)資料

fs = file:open(file, read|write...).

io:format(fs, "~p~n", [message]).

file.close(fs).

%% 

<<"愛我中華"/utf8>>

% 或者

unicode:characters_to_binary("愛我中華").

> io:format("~ts",[<<"愛我中華"/utf8>>]).

愛我中華ok

%%todo

Python學習 輸入和輸出

輸出 print hello,python print the quick brown fox jumps over the lazy dog 多個字串,用逗號隔開,就可以連成一串輸出 print 會依次列印每個字串,遇到逗號會輸出乙個空格 print 300 300 print 100 200 3...

Python學習 輸入和輸出

一 標準輸入和輸出 一 輸入 input 函式 從標準輸入讀入一行文字,預設的標準輸入是鍵盤。二 輸出 print 函式 向控制台輸出乙個或多個字元。注 print 函式列印結束後預設換行,可以加入引數end 改變 二 檔案的讀和寫 一 open open 返回乙個 file 物件,基本語法格式如下...

Python學習 輸入和輸出

一 輸入 input 函式 從標準輸入讀入一行文字,預設的標準輸入是鍵盤。二 輸出 print 函式 向控制台輸出乙個或多個字元。注 print 函式列印結束後預設換行,可以加入引數end 改變 一 open open 返回乙個 file 物件,基本語法格式如下 三 f.readline f.rea...