当前位置: 首页 > 面试题库 >

有没有一种可移植的方法来获取Python中的当前用户名?

施翰学
2023-03-14
问题内容

有没有一种可移植的方式来获取Python中当前用户的用户名(即,至少在LinuxWindows下都可以使用)。它会像这样工作os.getuid

>>> os.getuid()
42
>>> os.getusername()
'slartibartfast'

我四处搜寻,很惊讶地没有找到一个明确的答案(尽管也许我只是在谷歌搜索方面很差)。该PWD模块提供了一个相对简单的方法来实现这一目标下,说,Linux的,但它不存在于Windows。一些搜索结果表明,在某些情况下(例如,作为Windows服务运行),在Windows下获取用户名可能很复杂,尽管我尚未对此进行验证。


问题答案:

看一下getpass模块

import getpass
getpass.getuser()
'kostya'

可用性:Unix,Windows

ps每个注释下面的注释“ 该功能查看各种环境变量的值以确定用户名。因此,不应出于访问控制目的(或可能出于任何其他目的)依赖此功能,因为它允许任何用户模仿任何其他方式)。 “



 类似资料:
  • 问题内容: 我正在编写小型且非常干燥的框架,该框架高度依赖元数据。我想知道是否有一种方法来获取方法参数名称,即给定一些方法 得到的字符串和。 我知道我可以注释参数,但是那不是很好。 问题答案: 我们为包含参数名称的String[]的方法创建了一个自定义注释。与必须注释每个单独的参数相比,此方法感觉易于管理。我们计划添加构建时检查,以确保带注释的参数名称的数量与参数的数量匹配,因为这是我们所需要的。

  • 问题内容: 是否有一个很好的方法来Map 获取和忽略案件? 问题答案: TreeMap扩展了Map并支持自定义比较器。 字符串提供默认的不区分大小写的比较器。 所以: 比较器不考虑区域设置。在其JavaDoc中阅读有关它的更多信息。

  • 问题内容: 有没有一种方法可以在Java中随机获取HashMap的值? 问题答案: 这有效: 如果您希望随机值不是类型,只需在最后一行添加强制类型转换即可。因此,如果声明为: 最后一行可以是: 下面的代码 无效 ,总是返回s 数组,不能将其强制转换为。

  • 问题内容: 我有这个API: 但是in始终返回null。我可以将@GET更改为@POST,并且可以使用,但是我并没有真正执行创建或更新操作,因此使用post似乎很奇怪。 有没有办法通过球衣的GET请求获得身体? 问题答案: TL; DR 正确的解决方案是使用POST。 “我可以将@GET更改为@POST,并且可以,但是我并没有真正执行创建或更新操作,因此使用post似乎很奇怪” 为什么这么奇怪?P

  • 我正在努力做到没有方法,以便更好地把握概念。 我真的很接近了。我的时间数学似乎错了。我有什么不明白的? 输出:

  • 是PHP的可移植咨询文件锁定功能。他们明确宣传它甚至可以在windows下工作: Flock()允许您执行一个简单的读/写模型,几乎可以在所有平台上使用(包括大多数Unix衍生产品,甚至Windows)。 我想把一个也可移植的超时阻塞(和没有忙碌的等待工作周围的选项)。在UNIX中,这可以简单地通过设置一个警报来实现,该警报将发送一个: 是否有一种可移植的方法可以在阻塞上设置超时?如果有,如何?