python与各种语言间的时间转化(示例代码)

发布时间:2020-06-16编辑:脚本学堂
本文介绍下,python与各种语言间进行时间转换的几个例子,有需要的朋友可以参考下。

本节内容:
python各种语言间时间转化的例子。

一,基本知识
millisecond 毫秒
microsecond 微秒

nanosecond 纳秒
1秒=1000毫秒 1毫秒=1000微秒 1微秒=1000纳秒

二,perl
perl中可以使用time或localtime来获得时间,time返回从1970年1月1日0点的秒数,localtime返回当前时间的字符串表示,或年月日等得tuple表示。

来看一个例子:
 

复制代码 代码示例:

#!/usr/bin/perl
#site: www.jb200.com
#
use strict;
use warnings;
use POSIX qw(strftime);

# seconds from 1970.01.01 00:00:00
my $ti = time();
print $ti;
print "n";
print strftime("%Y-%m-%d %H:%M:%Sn", localtime($ti));
#1310623469
#2011-07-14 14:03:58

my $t = localtime();
print $t;
print "n";
#Thu Jul 14 12:25:16 2011

my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)=localtime();
print $year;
print "n";
#111

print strftime("%Y-%m-%d %H:%M:%Sn", localtime());
#2011-07-14 12:26:01

三,c#间的时间转换
1tick = 100 nanosecond

例子:
 

复制代码 代码示例:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyTest
{
    class Program
    {
        static void DateTimeTest()
        {
            DateTime dt2 = DateTime.Now;
            Console.WriteLine(dt2.Ticks);
            Console.WriteLine(dt2.ToString("MM/dd/yyyy hh:mm:ss"));
        }

        static DateTime? ConvertPerlTimeToDateTime(string perltime)
        {
            DateTime? dt = null;
            //perl time variable : seconds from 1970.01.01 00:00:00
            string sdt = perltime;
            long ldt = 0;
            if (long.TryParse(sdt, out ldt))
            {
                long ldt2 = new DateTime(1970, 1, 1).Ticks + ldt * 1000 * 1000 * 10;
                 dt = new DateTime(ldt2, DateTimeKind.Local);
                Console.WriteLine(dt.Value.ToString("MM/dd/yyyy hh:mm:ss"));
            }
            return dt;
        }

        static void Main(string[] args)
        {
            DateTimeTest();
            ConvertPerlTimeToDateTime("1309423883");
           //634462479788396720
            //07/14/2011 01:46:18
            //06/30/2011 08:51:23
        }
    }
}
 

四,python时间转换

python的perl相似,time也是从1970年1月1日开始的秒数。

例子:
 

复制代码 代码示例:

import time

ISOTIMEFORMAT='%Y-%m-%d %X'

# seconds from 1970.01.01 00:00:00
t = time.time()
print (t)
print time.strftime(ISOTIMEFORMAT,time.localtime(t))
#1310623143.12
#2011-07-14 13:59:03

(year,mon,day,hour,min,sec,wday,yday,isdst) = time.localtime()
print (year)
print (time.strftime(ISOTIMEFORMAT, time.localtime()))
#2011
#2011-07-14 13:59:03