最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【问题解答】在python 中"/.bashrc"的意思 -> 只有具有了背景知识后,再去学习相关技术,才能搞明白背后的逻辑

Linux crifan 3123浏览 0评论

【问题】

在python 中"/.bashrc"的意思

中的:

请问这句在python中什么意思啊

bashrc = os.path.expanduser("~")+"/.bashrc"

"/.bashrc" 有什么意思?我知道是以   .bashrc  结尾的文件。但是 为什么有个斜杠在前面???

【问题解答】

1."/.bashrc" 有什么意思?

"/.bashrc"是你所给出的Python代码中,所要处理的路径的其中一部分,路径的后半部分。

路径的另一部分,前半部分,是那个波浪号:~

加起来,就是:

~/.bashrc

其含义:

简答:

对应的就是文件:

/home/yourUsername/.bashrc

其中:

.bashrc,是个文件,其全名就是:.bashrc

表示用户的配置文件。

 

详解:

【整理】Linux系统中的~/.bashrc

 

2.我知道是以   .bashrc  结尾的文件

你这么理解,也不能怪你。

毕竟是你只熟悉了Windows世界:

.xxx表示后缀为xxx的文件

但是:

Linux世界中:

除了:

.xxx表示后缀为xxx的文件

之外,还有:

以点’.’开头的文件,表示隐藏文件

 

详见:

【整理】Linux系统中通过前缀加点,即.xxx表示隐藏文件

 

3.但是 为什么有个斜杠在前面???

如上所述:

因为前面波浪号展开后,是对应的用户的根目录,然后想要和后面的路径合并,

所以需要加上路径分隔符,因为:

Linux中的,路径分隔符是斜杠

 

完整的,代码,在Linux类系统中运行后结果是:

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
Function:
【问题解答】在python 中"/.bashrc"的意思 -> 只有具有了背景知识后,再去学习相关技术,才能搞明白背后的逻辑
https://www.crifan.com/qanda_python_slash_point_bashrc_meaning_understand_background_info_then_can_understand_true_logic

Author:     Crifan Li
Version:    2013-10-21
Contact:    https://www.crifan.com/about/me
"""

import os

def python_slash_bashrc():
    #bashrc = os.path.expanduser("~")+"/.bashrc"
    #Run under Linux(here is under Cygwin)
    currentUserHomeDirectory = os.path.expanduser("~")
    print "currentUserHomeDirectory=",currentUserHomeDirectory #currentUserHomeDirectory= /home/CLi
    bashrc = currentUserHomeDirectory + "/.bashrc"
    print "bashrc=",bashrc #bashrc= /home/CLi/.bashrc

if __name__ == "__main__":
    python_slash_bashrc();

如图:

run python got bashrc under cygwin

 

【总结】

就一点:

在学习某种技术或语音(此处的Python)之前,

需要对于(语法,代码等)所涉及背景知识有所了解

(此处就是涉及到Linux类系统中的~表示用户根目录,斜杠表示路径分隔符,点开头的表示隐藏文件)

才能真正的:写成正确的代码,理解别人所写的代码的。

 

其他,还有一些类似的例子,供不熟悉的人参考:

【整理】以Python为例说明在学习一个东西之前搞清楚该领域的基本概念是多么的重要

转载请注明:在路上 » 【问题解答】在python 中"/.bashrc"的意思 -> 只有具有了背景知识后,再去学习相关技术,才能搞明白背后的逻辑

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
83 queries in 0.187 seconds, using 22.12MB memory