Lua中的操作系统

本文详细介绍了Lua语言中os库的两个主要功能:os.clock用于获取程序使用的CPU时间近似值,os.date则用于格式化日期及时间。通过具体示例展示了如何使用这两个函数来测量代码执行时间和获取格式化日期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998


这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998





这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998



这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998


这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998


这个库通过表os实现

os.clock ()
功能:返回一个程序使用CPU时间的一个近似值

例如:
local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock() - x));

输出:

elapsed time : 2.55


--------------------------------------------------------------------------------

os.date ([format [, time]])
功能:返回一个按format格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
  format:
         "!":按格林尼治时间进行格式化。
 
"*t":将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min 
(0-59), sec (0-61), wday (星期几, 星期天为1), yday (年内天数), and isdst 
(是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
  若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
  
例如:
t = os.date("*t", os.time());
for i, v in pairs(t) do
      print(i, v);
end

输出:
hour  14
min   58
wday  2
day   10
month  8
year  2009
sec   18
yday  222
isdst  false

对于其它的格式字符串,os.date会将日期格式化为一个字符串

例如:
print(os.date("today is %A, in %B"))      -->today is Tuesday, in May
print(os.date("%x", 906000490))           -->09/16/1998


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值