你必须了解的第一个python程序
来源:互联网 发布:java jdk版本查看 编辑:程序博客网 时间:2024/05/01 10:16
学习一门语言,最开始需要了解的一个程序是hello world,而我们迫不及待需要完成一个程序,仅仅用print一个还是感觉啥都不知道,但是下面这个实现hello的程序通过完成的书写,可以让你对python的基本情况有一个了解,其中涉及:
- 注释
- 编码
- 文件的说明
- 模块的调用
- 函数的书写
- print函数
- 循环语句
- 语句书写规范
- 如何调用你书写的这个hello.py模块
这里是以内建的sys模块为例,编写的一个hello的模块:
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #注释是使用#号的
- #python是一个对空格要求很严格的语句,语句的区分不是使用;而是用缩进,缩进一致的表示是同一级的语句,注意冒号在函数的定义,if语句中别忘记
- ' a test module for hello'
- __author__ = 'Michael Liao'
- import sys
- def test():
- args = sys.argv
- #if elif else 循环语句要用:作为语句区分
- if len(args)==1:
- print 'Hello, world!'
- elif len(args)==2:
- print 'Hello, %s!' % args[1] #print中可以不使用(),%+print中引用的变量名作为参数引用
- else:
- print 'Too many arguments!'
- if __name__=='__main__':
- test()
以上就是Python模块的标准文件模板,当然也可以全部删掉不写,但是,按标准办事肯定没错
- 第1行和第2行是标准注释,第1行注释可以让这个hello.py文件直接在Unix/Linux/Mac上运行,第2行注释表示.py文件本身使用标准UTF-8编码;
- 第4行是一个字符串,表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释;
- 第6行使用__author__变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名;
- 使用sys模块的第一步,就是导入该模块:import sys
- 导入sys模块后,我们就有了变量sys指向该模块,利用sys这个变量,就可以访问sys模块的所有功能。
- sys模块有一个argv变量,用list存储了命令行的所有参数。argv至少有一个元素,因为第一个参数永远是该.py文件的名称,例如:
- 运行python hello.py获得的sys.argv就是['hello.py'];
- 运行python hello.py Michael获得的sys.argv就是['hello.py', 'Michael]。
- 最后,注意到这两行代码:
- if __name__=='__main__':
- test()
- 当我们在命令行运行hello模块文件时,Python解释器把一个特殊变量__name__置为__main__,而如果在其他地方导入该hello模块时,if判断将失败,因此,这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。
我们可以用命令行运行hello.py看看效果:
- $ python hello.py
- Hello, world!
- $ python hello.py Michael
- Hello, Michael!
如果启动Python交互环境(命令行),再导入hello模块:
- $ python
- Python 2.7.5 (default, Aug 25 2013, 00:04:04)
- [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import hello
- >>>
导入时,没有打印Hello, word!,因为没有执行test()函数。
调用hello.test()时,才能打印出Hello, word!:
- >>> hello.test()
- Hello, world!
0 0
- 你必须了解的第一个python程序
- Python的第一个程序
- Python的第一个程序
- python的第一个程序
- 12个你必须了解 or 用到Ajax的地方
- 关于MeeGo,你必须了解的15个事实!
- 关于meego开发你必须了解的15个事实
- Python入门之你必须了解的语法与类型
- Python入门之你必须了解的实用技巧
- 2015年10个Pythoner必须了解的Python库
- 【python】我的第一个python程序
- 编写你的第一个Windows程序
- 编写你的第一个Hibernate程序
- 你的第一个CEGUI程序
- 你的第一个中断处理程序
- 创建你的第一个smartrcp程序
- 编写你的第一个Hibernate程序
- 你的第一个Windows程序
- 06_MyBatis,Spring,SpringMVC整合
- 时间和日期例程
- UI进阶第七发:UITabBarController生命周期(使用storyoard搭建)
- UI进阶第七发:UITabBarController简单介绍
- java中相对路径,绝对路径问题总结(转)
- 你必须了解的第一个python程序
- 进程环境
- 黑马程序员-IOS-OC基础-面向对象语法三
- UI进阶第八发:Suege和Modal
- vnc不显示ubuntu桌面环境的解决方案之一
- 进程控制
- UI进阶第九发:iOS常用事件
- UI进阶第九发:iOS事件产生和传递过程(包括底层)
- iOS开发者如何提高自己的水平?