【Python】一个简单的例子
问题描述:
Python基础篇
参考资料:
(1)http://www.cnblogs.com/octobershiner/archive/2012/12/04/2801670.html
(2)http://www.cnblogs.com/itech/archive/2010/06/20/1760345.html
例子:
求解Fibonacci
glb_var.py
gl_count=1
path.py
# coding:utf-8
'''
Created on 2014-4-28 @author: Administrator
''' import os def show_path():
if __name__ == '__main__':
# 输出路径
print os.getcwd()
else:
print __name__
fibonacci.py
# encoding:utf-8
'''
Created on 2014-4-28 @author: Administrator
''' import glb_var, sys
from path import show_path def fibonacci(n):
a, b = 0, 1
if(n == 1):
print n;
else:
while(n > 0):
print "%d : %d" % (glb_var.gl_count, a + b)
b, a = a, a + b
n = n - 1
glb_var.gl_count += 1 value = input("please enter an integer:")
fibonacci(value)
show_path() #输出path和modules
print sys.path
print sys.modules
以上例子中Python基本知识,包含:
(1)注释
(2)包、模块
(3)print输入与输出
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
(1)注释
Python的注释包括单行注释、多行注释、特殊注释
- 单行注释:采用 #开头
- 多行注释:采用#来进行多行注释,代码间注释,不要刻意对齐注释,google编程规范

- 特殊注释:用 “”"三个引号标识,第一行大写开头,作简要概述,句号结尾,空一行开始详细的描述。他的好处是 这些注释保存在方法的__doc__属性中,可以打印显示。这个其实和java 的doc也很相似

(2)包、模块
- 模块(module)
通常模块为一个文件,直接使用import导入就可以了,可以作为module的文件类型有“.py”、“.pyo”、“.pyc”、“.pyd”、“.so”、“.dll”
上例子中使用import __init__就可以将__init__文件作为模块导入,系统在导入模块时做了三件事:
(1)为源代码中定义的对象创建一个名字空间,通过这个名字空间可以访问到模块中定义的函数和变量
(2)在新建的名字空间中执行源代码文件
(3)创建一个名为源代码文件的对象,该对象引用模块的名字空间,这样就可以通过这个对象访问模块中的函数和变量
用逗号分隔模块名称可以同时导入多个模块,import __init__ , os
模块导入时可以使用as关键字改变模块引用对象的名字:

使用from语句可以将模块中的对象直接导入到当前名字空间,from不创建一个模块名字空间的引用,而是把被导入模块的一个或多个对象
直接放入当前名字空间

from语句支持逗号分隔的对象,也可以使用星号(*)代表模块中除下划线以外的所有对象

如果一个模块中定义有列表__all__,则from module import * 语句只能导入__all__列表中存在的对象

注:
import 语句可以在程序的任何位置使用,你可以在程序中多次导入同一个模块,但模块中的代码仅仅在该模块被首次导入时执行。后面的import语句只是简单的创建一个到模块名字空间的引用而已。sys.modules字典中保存着所有被导入模块的模块名到模块对象的映射。这个字典用来决定是否需要使用import语句来导入一个模块的最新拷贝.
from module import * 语句只能用于一个模块的最顶层.特别注意:由于存在作用域冲突,不允许在函数中使用from 语句。
每个模块都拥有 __name__ 属性,它是一个内容为模块名字的字符串。最顶层的模块名称是 __main__ .命令行或是交互模式下程序都运行在__main__ 模块内部. 利用__name__属性,我们可以让同一个程序在不同的场合(单独执行或被导入)具有不同的行为,像下面这样做:

- 包 (package)
通常包总是一些目录,刻意使用import导入包,或者使用from+import导入包中的部分模块,包目录下为首的一个文件便是__init__.py
然后是一些模块文件和子目录,加入子目录中也有__init__.py,那么它就是这个包的子包
(3)print输出
# coding:utf-8
'''
Created on 2014-4-28 @author: Administrator
'''
import math # 整数的三种形式 十进制、八进制、十六进制
def output_int():
int_dec = 123
int_hex = 0x12
int_oct = 012
print "int_dec=%d,int_hex=%d,int_oct=%d" % (int_dec, int_hex, int_oct) # 字符串
def output_string():
string = "Hello World"
print "string=%s,length=%d" % (string, len(string)) # 字符串也存在精度和度和
def output_format():
string = "hello morning!"
print "%.3s" % string
print "%10.3s" % string # 浮点数
def output_float():
print "PI=%f" % math.pi
print "PI=%10.3f" % math.pi # width=10,precise=3,align=right
print "PI=%-10.3f" % math.pi # width=10,precise=3,align=left
print "PI=%06d" % int(math.pi) # 填充字符 # print的两种形式:换行和不换行
def output_line():
print "line" #不添加逗号(,)换行
print "hello", #添加逗号(,)不换行
print "world" output_int()
output_string()
output_format()
output_float()
output_line()
注:
以上总结了print格式化输出的一些使用方法
关于Python中使用中文注释出现错误解决:
SyntaxError: Non-ASCII character '\xe6'
(1)Python 默认的是ASCII 编码方式,如果出现中文会出现问题,所以必须在代码的第二行或第一行 显示的声明编码方式(以注释的方式,即"#"开始):
方法一:
#coding=utf-8
或者#coding:utf-8 方法二:
-*-coding=utf-8 -*- 方法三:
#this Python file uses the following encoding:utf-8
【Python】一个简单的例子的更多相关文章
- appium +python 一个简单的例子
appium 安装和python 安装好后. 1. 启动android模拟器--Genymotion-点击Start 2. 启动appium 3. 运行代码. # -*- ...
- 用一个简单的例子来理解python高阶函数
============================ 用一个简单的例子来理解python高阶函数 ============================ 最近在用mailx发送邮件, 写法大致如 ...
- 扩展Python模块系列(二)----一个简单的例子
本节使用一个简单的例子引出Python C/C++ API的详细使用方法.针对的是CPython的解释器. 目标:创建一个Python内建模块test,提供一个功能函数distance, 计算空间中两 ...
- Spring-Context之一:一个简单的例子
很久之前就想系统的学习和掌握Spring框架,但是拖了很久都没有行动.现在趁着在外出差杂事不多,就花时间来由浅入深的研究下Spring框架.Spring框架这几年来已经发展成为一个巨无霸产品.从最初的 ...
- 关于apriori算法的一个简单的例子
apriori算法是关联规则挖掘中很基础也很经典的一个算法,我认为很多教程出现大堆的公式不是很适合一个初学者理解.因此,本文列举一个简单的例子来演示下apriori算法的整个步骤. 下面这个表格是代表 ...
- fitnesse - 一个简单的例子(slim)
fitnesse - 一个简单的例子(slim) 2017-09-30 目录1 编写测试代码(Fixture code)2 编写wiki page并运行 2.1 新建wikiPage 2.2 运行 ...
- Struts2的配置和一个简单的例子
Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Strut ...
- 一个简单的例子搞懂ES6之Promise
ES5中实现异步的常见方式不外乎以下几种: 1. 回调函数 2. 事件驱动 2. 自定义事件(根本上原理同事件驱动相同) 而ES6中的Promise的出现就使得异步变得非常简单.promise中的异步 ...
- 一个简单的例子了解states
在大规模的配置管理工作中,我们要编写大量的states.sls文件.top.sls是states系统的入口文件,它负责指定哪些设备调用哪些states.sls文件.statse的默认工作目录是在/sr ...
- 跨站脚本功攻击,xss,一个简单的例子让你知道什么是xss攻击
跨站脚本功攻击,xss,一个简单的例子让你知道什么是xss攻击 一.总结 一句话总结:比如用户留言功能,用户留言中写的是网页可执行代码,例如js代码,然后这段代码在可看到这段留言的不同一户的显示上就会 ...
随机推荐
- NSDateFormatter中时间格式串的含义
a: AM/PM (上午/下午) A: 0~86399999 (一天的第A微秒) c/cc: 1~7 (一周的第一天, 周天为1) ccc: Sun/Mon/Tue/Wed/Thu/Fri/Sat ( ...
- win7 C# winForm编程 savefiledialog 不能弹出保存窗体
public void ResMsg() { while (isRecMsg) { //准备一个数组 准备接收 ...
- Vue.js学习 Item1 --快速入门
我们以 Vue 数据绑定的快速导览开始.如果你对高级概述更感兴趣,可查看这篇博文. 尝试 Vue.js 最简单的方法是使用 JSFiddle Hello World 例子.在浏览器新标签页中打开它,跟 ...
- Linux redis 配置文件
# Redis configuration file example # Note on units: when memory size is needed, it is possible to sp ...
- memcache 简单入门应用
1.memcache 简介和安装: 下载:下载文件,解压到某个地方. 2.数据存储格式 键值对,一个key对应一个值,一个值在内存中占用一个或多个4k大小的块. 3.php使用memcache的方式 ...
- VC++ 在类中添加多线程操作
CTestThread.h public: CTestThread(void); ~CTestThread(void); public: void setvalue(); static DWORD _ ...
- 用友二次开发之U810.1销售预订单导入
- 数据结构中的堆棧在C#中的实现
一.大致学习 堆棧是一种面向表的数据结构,堆棧中的数据只能在标的某一短进行添加和删除操作,是一种典型的(LIFO)数据结构. 现实生活中的理解:自助餐厅的盘子堆,人们总是从顶部取走盘子,当洗碗工把洗好 ...
- Weka链接Mysql数据库
Weka简介 Weka的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),是一款免费的,非商业化(与之对应的是SPSS公司商业数据挖掘产 ...
- Mac OSX 快捷键&命令行总览
大家初用Mac OSX可能不习惯,特别收集总结了Mac OSX 上的快捷键,方便大家参考 ,请叫我雷锋. 一.Mac OSX 快捷键 ctrl+shift ...