Python白手起家四:系统变量与模块

简介: 为了实现书上的一个例子,代码文件保存为mytest.py:import sys print('命令行参数是:') for i in sys.argv:     print(i) print('\n\nPython Path is:',sys.
为了实现书上的一个例子,代码文件保存为mytest.py:
  1. import sys

  2. print('命令行参数是:')

  3. for i in sys.argv:
  4.     print(i)

  5. print('\n\nPython Path is:',sys.path,'\n')
如果是Linux下,则非常简单,只需要python mytest.py n1 n2 n3

但在XP下,就得稍作调整:
1、查看Python系统路径,我使用3.2版本,默认装到了C:根目录下,即C:\Python32
2、右键“我的电脑”->“属性”->“高级”->“环境变量”->编辑“Path”->“变量值”->末尾插入“;C:\Python32”(注意C:之前的那个分号连接符)->“确定”
3、“win + r”->“CMD”打开XP下的命令行界面
4、进入Python程序所在目录,我的是桌面上的Python文件夹
5、执行命令python mytest.py n1 n2 n3

显示以下结果:
C:\Documents and Settings\Administrator\桌面\Python>python mytest.py ni wo ta
命令行参数是:
mytest.py
ni
wo
ta


Python Path is: ['C:\\Documents and Settings\\Administrator\\桌面\\Python', 'C:\\WINDOWS\\system32\\python32.zip', 'C:\\Python32\\DLLs', 'C:\\Python32\\lib', 'C:\\Python32', 'C:\\Python32\\lib\\site-packages']

好了,为了了解sys的用途,在IDLE或任何Python环境下,执行
  1. >>> help(sys)
  2. Help on built-in module sys:

  3. NAME
  4.     sys
  5. .............................
可以看到模块中有很多内容,当然包括了
  1. Dynamic objects:
  2.     
  3.     argv -- command line arguments; argv[0] is the script pathname if known
  4.     path -- module search path; path[0] is the script directory, else ''
  5.     modules -- dictionary of loaded modules
  6.     
  7. .................
这样的话,说明动态对象有argv、path和modulues等多个。
然后我看到了还有一个静态对象,其中
  1. Static objects:
  2.     
  3.     float_info -- a dict with information about the float implementation.
  4.     int_info -- a struct sequence with information about the int implementation.
  5.     maxsize -- the largest supported length of containers.
  6.     maxunicode -- the largest supported character
  7.     builtin_module_names -- tuple of module names built into this interpreter
  8.     subversion -- subversion information of the build as tuple
  9.     version -- the version of this interpreter as a string
  10.     version_info -- version information as a named tuple
  11.     hexversion -- version information encoded as a single integer
  12.     copyright -- copyright notice pertaining to this interpreter
  13.     platform -- platform identifier
  14. .........................
有个platform的静态参数,不用说一定是显示操作系统平台的意思,于是便试试,在Python控制台:
  1. >>> import sys
  2. >>> print(sys.platform)
  3. win32
  4. >>>
看,显示的win32。当然还有FUNCTIONS和FILE,大家可以自己试试。

建议:
    多看自带的文档,才能更快地成熟起来。人总要学着自己长大,才能独立。光靠看教程,吃别人喂得东西远远不够。自己探究,自己尝试,自己排错,才能让自己真正去了解,学到的才是明白的东西。
相关文章
|
2月前
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
57 4
|
19天前
|
Python
Python Internet 模块
Python Internet 模块。
118 74
|
26天前
|
Python
[oeasy]python050_如何删除变量_del_delete_variable
本文介绍了Python中如何删除变量,通过`del`关键字实现。首先回顾了变量的声明与赋值,说明变量在声明前是不存在的,通过声明赋予其生命和初始值。使用`locals()`函数可查看当前作用域内的所有本地变量。进一步探讨了变量的生命周期,包括自然死亡(程序结束时自动释放)和手动删除(使用`del`关键字)。最后指出,删除后的变量将无法在当前作用域中被访问,并提供了相关示例代码及图像辅助理解。
111 68
|
2月前
|
算法 数据安全/隐私保护 开发者
马特赛特旋转算法:Python的随机模块背后的力量
马特赛特旋转算法是Python `random`模块的核心,由松本真和西村拓士于1997年提出。它基于线性反馈移位寄存器,具有超长周期和高维均匀性,适用于模拟、密码学等领域。Python中通过设置种子值初始化状态数组,经状态更新和输出提取生成随机数,代码简单高效。
118 63
|
2月前
|
测试技术 Python
手动解决Python模块和包依赖冲突的具体步骤是什么?
需要注意的是,手动解决依赖冲突可能需要一定的时间和经验,并且需要谨慎操作,避免引入新的问题。在实际操作中,还可以结合使用其他方法,如虚拟环境等,来更好地管理和解决依赖冲突😉。
|
2月前
|
持续交付 Python
如何在Python中自动解决模块和包的依赖冲突?
完全自动解决所有依赖冲突可能并不总是可行,特别是在复杂的项目中。有时候仍然需要人工干预和判断。自动解决的方法主要是提供辅助和便捷,但不能完全替代人工的分析和决策😉。
|
2月前
|
JSON Linux 数据格式
Python模块:从入门到精通,只需一篇文章!
Python中的模块是将相关代码组织在一起的单元,便于重用和维护。模块可以是Python文件或C/C++扩展,Python标准库中包含大量模块,如os、sys、time等,用于执行各种任务。定义模块只需创建.py文件并编写代码,导入模块使用import语句。此外,Python还支持自定义模块和包,以及虚拟环境来管理项目依赖。
Python模块:从入门到精通,只需一篇文章!
|
28天前
|
Shell Python
[oeasy]python049_[词根溯源]locals_现在都定义了哪些变量
本文介绍了Python中`locals()`函数的使用方法及其在调试中的作用。通过回顾变量赋值、连等赋值、解包赋值等内容,文章详细解释了如何利用`locals()`函数查看当前作用域内的本地变量,并探讨了变量声明前后以及导入模块对本地变量的影响。最后,文章还涉及了一些与“local”相关的英语词汇,如`locate`、`allocate`等,帮助读者更好地理解“本地”概念在编程及日常生活中的应用。
34 9
|
2月前
|
Python
Python的模块和包
总之,模块和包是 Python 编程中非常重要的概念,掌握它们可以帮助我们更好地组织和管理代码,提高开发效率和代码质量
45 5
|
2月前
|
数据可视化 Python
如何在Python中解决模块和包的依赖冲突?
解决模块和包的依赖冲突需要综合运用多种方法,并且需要团队成员的共同努力和协作。通过合理的管理和解决冲突,可以提高项目的稳定性和可扩展性