Python核心编程读笔 1
第一章 欢迎来到Python世界
1 Python特点:
高级的可进行系统调用的解释性语言
面向对象
可升级、扩展、移植
自动内存管理器(内存管理由Python解释器负责)
2 安装
Windows的安装只用从官网上下载一个安装包然后一步一步next到底即可,最后不要忘记勾选“添加到path”,或者自己后面手动添加path环境变量。安装好后在cmd中输入命令python即可检查有没有安装成功
3 运行
win版本安装好后,默认有一个python的IDE叫IDLE,可以直接在里面敲代码。或者也可以自己写好.py格式的程序,然后用cmd中去运行该.py文件
第二章 Python起步
(1) print
print 'hello world' 或者 print( "hello world" ) 或者 myString=“hello world” print myString
print的格式化输出: print “%s is number %d!!!” % ( "python", 1 ) 输出:python is number 1
print支持重定向:
import sys
print >> sys.stderr, 'some message!' 将输出重定向到标准错误输出
logfile = open( '/tmp/mylog.txt', 'a' )
print >> logfile, 'some message!' 将输出重定向到日志文件
logfile.close();
注意:print默认会给每一行添加一个换行符,只要在print语句结尾添加一个逗号,即可改变此行为
(2)raw_input() 读取标准输入
>>>user = raw_input( 'Enter login name: ' )
Enter login name: root
>>>user
'root'
>>>num = raw_input( 'enter a number: ' )
enter a number: 1024
>>>print 'doubling your number: %d' % ( int(num)*2 )
doubling your number: 2048
(3) 运算符
// 浮点除法(地板除,总是舍去小数部分)
** 乘方
<> “不等于”操作符,但目前慢慢被淘汰,用!=较好
and or not 逻辑运算符
(4) 数字
python支持5种基本类型:
int
long
bool
float
complex(复数)
(5)字符串
单引号、双引号、三引号
[:] 得到子字符串
+ 字符串连接
* 字符串重复
(6)列表和元组(理解成“数组”)
列表元素用[],元素的个数和内容可变;元组是只读的列表,元素用(),元素个数不变,元素内容可变
通过切片[:]可以得到子集
(7)字典
字典元素用大括号{}包裹:
>>> a = { "abc":2, "cde":3 }
>>>a["abc"]
2
>>>a["def"] = 7 此时a中会多一个元素!
(8)if语句
if x>0: #x>0并不需要用括号!
...
elif sth:
...
else:
...
(9)for语句、range()函数、enumerate()函数
for item in ['a', 'b', 'c']
for eachNum in range(3)
foo = 'abc'
for eachChar in foo
foo = 'abc'
for i in range( len(foo) ):
print foo[i], '%d' % i
foo = 'abc'
for i, ch in enumerate( foo ):
print ch, '%d' % i
(10) 列表解析
squared = [ x**2 for x in range(4) ] #现在squared列表中的元素有 0 1 4 9
sqdEvens = [ x**2 for x in range(8) if not x%2 ] #现在sqdEvens列表中的元素有 0 4 16 36
(11) 文件操作open()、file()
fobj = open( filename , 'r' )
for eachLine in fobj:
print eachLine,
fobj.close()
file()是python是最近才添加的函数,等同于open()
(12)错误和异常
使用try-except语句:
try:
filename = raw_input( 'Enter file name: ' )
fobj = open( filename, 'r' )
for eachLine in fobj:
print eachLine,
fobj.close()
except IOError, e:
print 'file open error: ', e
(13) 函数
如何定义函数:
def addMe2Me( x ):
'apply + operation to argument' #这是对函数功能描述的注释
return x+x;
调用函数:
>>>addMe2Me(4.25)
默认参数:
def foo( debug = True ):
if debug:
print 'in debug mode'
(14) 类
类是数据和逻辑的容器!!!
类定义实例:
class FoolClass( object ):
"My first class: FoolClass" #类说明,注释
version = 0.1 #静态成员!!! #构造函数!!!
def __init__( self, nm='John' ): #self类似于this
"constructor"
self.name = nm
print 'create a class instance for ', nm def showname(self):
print 'Your name is ', self.name
print 'My name is ', self.__class__.__name__ def shower(self):
print self.version def addMe2Me( self, x ):
return x+x
类使用实例:
fool = FoolClass( "hansonwang" ) #非常像调用一个函数
fool.shower() #调用成员函数
(15)模块
导入模块: import module_name
一旦模块导入完成,一个模块的属性(函数和变量)可以通过.号访问:
import sys
sys.stdout.write( "Hello World" )
sys.platform
(16) 实用的函数
dir( obj ) 显示对象的属性
help( obj ) 以一种整齐美观的形式显示对象的文档字符串
int( obj ) 对象→整数
str( obj ) 对象→字符串
len( obj ) 返回对象长度
open( filename, mode ) 以mode('r'=读,'w'=写)方式打开文件
range( [start,]stop[,step] ) 返回一个整数列表,start默认0,step默认1
raw_input( str ) str是提示信息
type( obj ) 返回对象的类型(返回值本身是一个type对象!)
Python核心编程读笔 1的更多相关文章
- Python核心编程读笔 12:OOP
第13章 面向对象编程 一.基本概念 1.object类是所有类的基类,如果你的类没有继承任何其他父类,object 将作为默认的父类. 2.python创建实例时无需new: myFirstObje ...
- Python核心编程读笔 10:函数和函数式编程
第11章 函数和函数式编程 一 调用函数 1 关键字参数 def foo(x): foo_suite # presumably does some processing with 'x' 标准调用 ...
- Python核心编程读笔 13:执行环境
第14章 执行环境 一.可调用对象 python有四种可调用对象:函数.方法.类.一些类的实例 1 函数 (1)内建函数(BIF) BIF是用c/c++写的,编译后放入python解释器,然后把它们 ...
- Python核心编程读笔 11:模块
第12章 模块 1.基本概念 模块的文件名就是模块名字.py 每个模块都定义了自己唯一的名称空间 模块的搜索路径:会被保存在 sys 模块的 sys.path 变量里 >>>sys. ...
- Python核心编程读笔 8: 文件和输入输出
第九章 文件和输入输出 一.文件内建函数.方法.属性 1 文件内建函数 file_object = open(file_name, access_mode='r', buffering=-1) 工厂函 ...
- Python核心编程读笔 7: 条件和循环
第八章 条件和循环 一.if python中的条件表达式:很奇葩!!! smaller = (x < y and [x] or [y])[0] 或者: smaller = x if x < ...
- Python核心编程读笔 6: 映射和集合类型
第七章 映射和集合能力 一 字典(python中唯一的映射类型) 1 基本 创建和赋值: 正常创建:>>>dict = {'name':'earth', 'port':80} 用工厂 ...
- Python核心编程读笔 5: python的序列
第六章 序列:字符串.列表.元组 一.序列 (1)序列类型操作符 seq[ind] 获得下标为 ind 的元素 seq[ind1:ind2] 切片操作 seq * expr 序列重复 expr 次 s ...
- Python核心编程读笔 4
第五章 数字 二.整形 1 布尔型 2 标准整数类型 3 长整型 数字后面加L,能表示非常非常大的数字 目前,整形和长整型逐渐统一!!! 三.双精度浮点数 四.复数 有关复数的几个概念: 表示虚数的语 ...
随机推荐
- iOS音频播放(二):AudioSession
(本文转自码农人生) 前言 在实施前一篇中所述的7个步骤步之前还必须面对一个麻烦的问题,AudioSession. AudioSession简介 AudioSession这个玩意的主要功能包括以下 ...
- RHEL5.8安装Oracle11g
1.安装环境[root@rusky-oracle11g ~]# uname -r2.6.18-308.el5[root@rusky-oracle11g ~]# cat /etc/issueRed Ha ...
- SQL Server AlwaysOn 故障转移
目的: a) AlwaysOn 可用性组功能是一个提供替代数据库镜像的企业级方案的高可用性和灾难恢复解决方案. b) 当数据库服务器SQL1出现故障宕机时,可以通过AlwaysOn可用性组,自动故障转 ...
- Gson解析JsonObject和JsonArray
Gson中重要的几个核心类: Gson.JsonParser.JsonObject.JsonArray. 下面就是解析的步骤: public void parserJsonArray(String s ...
- LeetCode之ReverseWorldString
题目:将一个英文句子翻转,比如:the sky is blue 翻转后变为:blue is sky the 分析:我的实现方法是,利用栈将单词存储起来,然后再顺序拿出来,单词进栈还需注意添加空格. 主 ...
- Spring学习之切入点表达式
链接地址:http://jinnianshilongnian.iteye.com/blog/1415606
- jquery编写的简单日历
以前在开发web页面的时候遇到日历,都是直接引入一些日历组件来用,一直不太明白实现原理,总感觉挺复杂的. 今天尝试着用jquery写了一个简单的日历功能,可以选择年份,月份,返回今天,原来简单的日历功 ...
- js选项卡切换效果
选项卡切换在页面中比较常见,这里是我利用js闭包还有setTimeout定时器实现的一个比较实用的选项卡功能. <!DOCTYPE html> <html lang="en ...
- 菜鸟的jQuery源码学习笔记(前言)
前言 相信任何一名前端开发人员或者是前端爱好者都对jQuery不陌生.jQuery简单易用,功能强大,特别是拥有良好的浏览器兼容性,大大降低了前端开发的难度,使得前端开发变得“平易近人起来”.自从本人 ...
- Python学习笔记--Python字符串连接方法总结
声明: 这些总结的学习笔记,一部分是自己在工作学习中总结,一部分是收集网络中的知识点总结而成的,但不到原文链接.如果有侵权,请知会,多谢. python中有很多字符串连接方式,总结一下: 1)最原始的 ...