小编Kyf*_*rEz的帖子

Powershell将环境变量与路径连接起来

所以我有这个代码:

$userprofile=Get-ChildItem Env:USERPROFILE
$localpath="$userprofile\some\path"
Run Code Online (Sandbox Code Playgroud)

我希望下面的输出来自$localpath:

c:\users\username\some\path
Run Code Online (Sandbox Code Playgroud)

但是我得到的是:

System.Collections.DictionaryEntry\some\path
Run Code Online (Sandbox Code Playgroud)

所以,当然,像cd $localpath失败的东西.我如何实现我的需求?

string environment-variables filepath powershell-4.0

9
推荐指数
1
解决办法
7639
查看次数

如何使用 dateutil.tz.tz.tzoffset 来本地化使用 strptime 创建的时区天真日期时间?

我如何使用 dateutil.tz.tz.tzoffset 类型的对象来本地化具有正确时区和 DST 信息的时区原始日期时间对象,以便它可以正确转换为 UTC?或者,如何将 dateutil.tz.tz.tzoffset 转换为 pytz.timezone?

我一直无法找到有关使用 dateutil.tz.tz.tzoffset 对象本地化日期时间对象的好信息。请参阅下面的一些我审查过的更好的文章。

背景资料:

我正在处理大量日期字符串,其中大多数没有时区信息。在某些情况下,时间是格林威治标准时间,在其他情况下是本地时间。我必须首先确定创建这些各种日志的设备的时区,然后解析各种日期字符串,如果是本地时间,则添加添加时区,最后将其转换为 UTC。

我几乎让这一切都在工作,除了确定时区的唯一可靠方法是从文本文件中获取日期格式为 EDT、IST 等,因此我使用了以下链接中最高投票的帖子来完成这使用 dateutil 的 parser.parse() 函数并将其发送给它的 tzinfos 参数的字典。(在 Python 中使用时区缩写名称解析日期/时间字符串?

但是,这给我留下了一个 DateTime,它有一个 tzinfo type=dateutil.tz.tz.tzoffset。我没问题,除非我需要使用这个 tzinfo 来本地化不包含时区信息的字符串,并且 dateutil.tz.tz.tzoffset 类型没有像 pytz.timezone 那样的本地化选项,这是关键我的问题。

我让这太难了吗?我是否只是用我保存的 dateutil.tz.tz.tzoffset 对象替换了时区天真日期时间中的 tzinfo ?

代码:

下面读取日期字符串并将其保存为日期时间对象,将时区保存在 var 中以备后用,然后将日期字符串转换为 UTC:

from dateutil.parser import parse as parsedate
import pytz
from pytz import timezone
from datetime import datetime

timestr = 'Sat, 5/01/2019 8:00PM EDT' #only reliable source of timezone info
dtfromstrEDT = parsedate(timestr, tzinfos=tzd) …
Run Code Online (Sandbox Code Playgroud)

python datetime pytz python-dateutil

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