両方ともリストを引き受けるが、 print(リスト)はタブで連結し、最後は改行を付加。 ''printは常に標準出力。
io.write(リスト)は純粋に連結するのみ。 io.writeは現在割り当てられている出力ハンドルが対象。切り替え可能。 (ファイルor標準出力or標準エラーなど、とにかく現在割り当てられているハンドル)