标签: strptime

JavaScript 中的 strptime

我有一个日期输入字段,允许用户输入日期,并且我需要验证此输入(我已经有服务器端验证),但技巧是格式取决于区域设置。我已经有一个用于将 strptime 格式字符串转换为用户首选项的系统,并且我想使用相同的格式在 Javascript 端进行验证。

strptime()有任何关于Javascript 实现的想法或链接吗?

javascript strptime phpjs

6
推荐指数
1
解决办法
1万
查看次数

使用strptime()的2位数年份无法很好地解析生日

考虑以下生日(as dob):

  • 1君68
  • 1君69

用Python解析时datetime.strptime(dob, '%d-%b-%y')会产生:

  • datetime.datetime(2068, 6, 1, 0, 0)
  • datetime.datetime(1969, 6, 1, 0, 0)

当然,他们应该出生在同一个十年,但现在甚至不是在同一个世纪!

根据文档,这是完全有效的行为:

当接受2位数年份时,它们将根据POSIX或X/Open标准进行转换:值69-99映射到1969-1999,值0-68映射到2000-2068.

我理解为什么函数设置这样,但是有办法解决这个问题吗?也许定义自己的两位数年份范围?

python 2-digit-year strptime

6
推荐指数
1
解决办法
4113
查看次数

使用R将时间格式转换为数字

在大多数情况下,我们使用R将数字时间转换为posixct格式.但是,有时,我们想比较哪个时间点更早,然后我们更喜欢数字时间格式.因此,将时间格式转换为数字是非常实际的问题.例如,我的数据格式如"2001-03-13 10:31:00",

  begin <- "2001-03-13 10:31:00"
Run Code Online (Sandbox Code Playgroud)

使用R,我想弄清楚如何将其转换为数字,例如Julian时间,类似于1970-01-01 00:00:00和2001-03-13 10:31:00之间的秒数.

你有什么建议吗?


朱利安历法开始于公元前45年(70年代AUC),作为朱利叶斯·凯撒对罗马历法的改革.它是在与亚历山大的天文学家Sosigenes协商后选择的,可能是为了接近热带年份(至少从Hipparchus开始就已知).见http://en.wikipedia.org/wiki/Julian_calendar

time r numeric strptime posixct

6
推荐指数
2
解决办法
3万
查看次数

在R中调用strptime时毫秒难题

options(digits.secs = 3);

> strptime("2007-03-30 15:00:00.007", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.007"
> strptime("2007-03-30 15:00:00.008", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.008"
> strptime("2007-03-30 15:00:00.009", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.008"
> strptime("2007-03-30 15:00:00.010", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.01"
> strptime("2007-03-30 15:00:00.011", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.010"
> strptime("2007-03-30 15:00:00.999", format = "%Y-%m-%d %H:%M:%OS");
[1] "2007-03-30 15:00:00.998"
Run Code Online (Sandbox Code Playgroud)

我很困惑,为什么与"009"有一毫秒的差异,然后再从"011"那里得到.

r strptime

6
推荐指数
1
解决办法
5525
查看次数

strptime()函数未定义

我的功能有一个奇怪的问题strptime().

php手册中没有php扩展安装,它可以在PHP 5> = 5.1.0中使用.我用php 5.3.5在Windows 7上安装了wamp服务器.但是当我调用这个函数时,它会返回一个致命错误function strptime is undefined.我无法理解什么是问题.这个功能在win7中可用吗?

php datetime strptime

6
推荐指数
1
解决办法
4510
查看次数

`DateTime.strptime`返回工作日/时间字符串的无效日期

为什么Ruby不会strptime将其转换为DateTime对象:

DateTime.strptime('Monday 10:20:20', '%A %H:%M:%S')
# => ArgumentError: invalid date
Run Code Online (Sandbox Code Playgroud)

虽然这些工作?

DateTime.strptime('Wednesday', '%A')
# => #<DateTime: 2015-11-18T00:00:00+00:00 ((2457345j,0s,0n),+0s,2299161j)>
DateTime.strptime('10:20:20', '%H:%M:%S')
# => #<DateTime: 2015-11-18T10:20:20+00:00 ((2457345j,37220s,0n),+0s,2299161j)>
Run Code Online (Sandbox Code Playgroud)

ruby date strptime

6
推荐指数
1
解决办法
286
查看次数

将strptime函数应用于熊猫系列

我有一个pandas DataSeries,其中包含日期格式的字符串格式:

2016-01-14 11:39:54

我想将字符串转换为时间戳。

我正在apply尝试尝试将'datetime.strptime'传递给系列的每个元素的方法

date_series = date_string.apply(datetime.strptime, args=('%Y-%m-%d %H:%M:%S'))

运行代码时,出现以下错误:

strptime() takes exactly 2 arguments (18 given)

我的问题是(1)我是否采用正确的方法,(2)为什么strptime将我的args转换为18个参数?

python strptime pandas

6
推荐指数
1
解决办法
8479
查看次数

在R中,为什么我在POSIXct和POSIXlt之间得到一毫秒的差异?

这个片段

options(digits.secs=3)
s<-"12:00:00.188"
fmt<-"%I:%M:%OS"
print(strptime(s,fmt))
print(as.POSIXct(strptime(s,fmt)))
Run Code Online (Sandbox Code Playgroud)

给出了这个文本输出:

[1] "2017-09-12 00:00:00.188 CEST"
[1] "2017-09-12 00:00:00.187 CEST"
Run Code Online (Sandbox Code Playgroud)

虽然我希望上面的结果是一样的.我错过了什么?

我的会话信息:

print(sessionInfo())
Run Code Online (Sandbox Code Playgroud)

得到:

R version 3.4.0 (2017-04-21)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=Italian_Italy.1252  LC_CTYPE=Italian_Italy.1252    LC_MONETARY=Italian_Italy.1252 LC_NUMERIC=C                  
[5] LC_TIME=Italian_Italy.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.4.0 tools_3.4.0   
Run Code Online (Sandbox Code Playgroud)

Linux中的结果相同:

R version 3.3.3 (2017-03-06)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux …
Run Code Online (Sandbox Code Playgroud)

r strptime posixct posixlt

6
推荐指数
1
解决办法
212
查看次数

如何在格式为“0000-00-00T00:00:00+00:00”的字符串上使用 datetime.strptime?

由于我的应用程序的情况,我更愿意使用datetime.strptime而不是dateutil.parser.

查看文档后,我认为这%Y-%m-%dT%H:%M:%S%z可能是解析这样的日期字符串的正确格式。但它仍然给我一个错误。

例子

from datetime import datetime

d = '0000-00-00T00:00:00+00:00'
datetime.strptime(d, '%Y-%m-%dT%H:%M:%S%z')
Run Code Online (Sandbox Code Playgroud)
ValueError: time data '0000-00-00T00:00:00+00:00' does not 
            match format '%Y-%m-%dT%H:%M:%S%z'
Run Code Online (Sandbox Code Playgroud)

python datetime strptime

6
推荐指数
1
解决办法
5701
查看次数

为什么在 RStudio 中使用 View 时 strptime 会导致无限列表?

免责声明:问题的标题可能是错误的,因为我不知道是什么导致了这种行为。“问题”是在 RStudio 查看器中查看 POSIXlt 对象会显示一个无限链表,据我所知。

MWE:

x <- strptime("2021-01-17", format = "%Y-%m-%d")
class(x)# outputs "POSIXlt" "POSIXt" 
View(x) # Opens the viewer in RStudio
Run Code Online (Sandbox Code Playgroud)

打开查看器时,您可以单击每个项目上的“展开”,它会一直向下: 时间变量的 RStudio 查看器屏幕截图

我也可以通过控制台访问内容,例如输入:

x[[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]][[1]]
Run Code Online (Sandbox Code Playgroud)

输出始终相同:日期“2021-01-17 CET”。

这是什么原因造成的?我怀疑这可能是由于 RStudio 而不是 POSIXlt 类本身?我也尝试阅读?strptime文档,但没有发现有关导致此问题的函数输出的注释。

r strptime rstudio posixlt

6
推荐指数
0
解决办法
86
查看次数

标签 统计

strptime ×10

r ×4

python ×3

datetime ×2

posixct ×2

posixlt ×2

2-digit-year ×1

date ×1

javascript ×1

numeric ×1

pandas ×1

php ×1

phpjs ×1

rstudio ×1

ruby ×1

time ×1