python变量标识符是一个字符串、长度没有限制_python 简明教程笔记

标签:

1,python特点

python 注重的是如何解决问题,而不是语法和结构简单高效、扩展性

2,安装 python

python -V        检测是否安装pythonctrl+d            退出python提示符python是大小写敏感的

任何#号后面的都是注释

特殊形式的注释 #!,被称为组织行,这行的目的是告诉系统在执行程序时,应该运行哪个解释器

第一行的注释不能是中文

解释器中运行python

退出:linux ctrl +  d    window  ctrl + z 然后 enter回车

帮助: help(str),在linux中,通过 env 设置pythondocs 环境变量,就可以使用 help 命令了

3,基本概念

字符串、常量、变量

4种类型的数:整数、长整数、浮点数和复数

单引号显示字符串,所有的空格、制表符都会显示

三引号显示多行的字符串,在三引号中可以自由使用单引号和双引号

单引号、双引号、三引号

在字符串中,行末单独的反斜杠 \ 表示字符串在下一行继续

自然字符串 r"" 或 R"",指示某些不需要如转义符那样的特别处理的字符串

python 允许处理unicode文本,只需要在字符串前面加上 u"中文"

字符串是不可变的

按字面意思自动连接,例如 ‘this is a‘ ‘book is good?‘ 会连接为一句

python没有char数据类型,单引号和双引号意思一样,

可以用自然字符串处理正则表达式,要不会需要很多的反斜杠

4,基本概念

变量可以存储任何东西,变量是你计算机中存储信息的一部分内存

python变量标识符由字母数字下划线组成,首字母必须是下划线或者字母

变量可以处理不同类型的值,称为数据类型

python 标识符区分大小写

python是完全面向对象的,对于数字、字符串、函数都可以是对象,python把在程序中用到的任何东西都称为对象

使用变量时,只需要赋值,不需要声明变量或数据类型

逻辑行与物理行=====物理行是你在编写程序时所看见的,逻辑行是python看见的单个语句

默认的python希望每行都只有一条语句

强烈建议,每个物理行,只有一个逻辑行

如果你想在一个物理行显示多个逻辑行,可以使用分号; ,分号表示一个逻辑行的结束

如果逻辑行太长,可以使用明确的行连接, 使用反斜杠 \

python程序扩展名为.py

在解释器中运行: python program.py

python中行首的空白最重要,用来决定逻辑层的缩进层次,从而决定语句的分组

同一层次的语句必须有相同的缩进,每一组这样的语句称为一个块

何时你能够使用新块,在控制流中详细介绍

选择一种缩进风格使用,然后一贯的使用它

5,运算符和操作数

运算符 +、-、,一个表达式可以分解为运算符和操作数

http://www.kuqin.com/abyteofpython_cn/ch05s02.html

赋值运算符的运算是从右向左的

控制流

python中三种控制流语句 if、for、while,python中没有switch语句

raw_input    内建函数,提交一个字符串,等待用户输入,并给出提示

if elif else

while

while 语句有一个可选的else 从句

python 严格注重缩进和大小写,就连True和False 首字母必须大小,否则都是错误的

range 生成第一个数到第二个数之前的序列,第三个参数是步长

for i in range(1,5)  等于 for i in [1,2,3,4]

for i in [序列]

for in 循环语句,逐一使用队列中的每一项目

len 函数,获取字符串的长度 len(str)

break 终止循环

如果在循环中终止,else块将不执行

continue 跳出当前循环,继续下一次循环,使用于循环中

int 把字符串转换为整数,事实上int是一个类

6,函数

def sayHello():    定义函数

def 关键字定义函数,

函数内部定义的变量是局部的,

有默认参数值必须在无默认参数值的后面声明,否则是无效的,也就是先声明无默认值形参,再声明有默认值的形参

global 用来声明全局变量,可以同时声明多个全局变量

如果一个函数有许多参数,可以通过命名为函数添加实参,也就是指定的值传递参数

没有返回值的return,等价于return None

pass 在python中表示一个空的语句块

docStrings    文档字符串

【文档字符串的惯例】是一个多行字符串,它的首行以大写字母开始,第二行是空行,从第三行开始时详细的描述 句号结尾。

print func.__doc__        打印文档字符串

第二行是空行,从第三行开始是描述

建议自己所写的函数都要写文档字符串

7,模块

模块是一个包含了你定义的函数和变量的文件,为了在其他程序中重用模块,模块的文件名必须以.py为扩展名

学习使用标准库模块

字节编译的 .pyc 文件,使输入模块更快一些

import 模块名,告诉python,我们将要使用这个模块

sys.argv     包含了命令行参数的列表,列表的第一个参数总是脚本的名称

from .. import

直接使用argv变量到你的程序中,from sys import argv

避免使用 from..import,而使用import语句,因为这样可以使你的程序更加易读

模块的 __name__

假设我们只想在程序本身运行的时候,执行,而在被别的模块输入的时候不运行

每个python模块都有一个__name__,如果它是 ‘__main__‘ ,说明这个模块是被单独运行的

制造你自己的模块----每个python程序也是一个模块

内建的dir 函数

使用内建的dir函数列出模块定义的标识符,标识符有函数、类和变量

dir() 提供一个模块名,返回模块定义的名称列表 不提供参数时,提供模块名时,返回当前模块中定义的名称列表

del 删除一个变量

8,数据结构

数据结构是指程序可以处理的数据 和 结构

python有三种内建的数据结构:列表、元组、字典

列表 --处理一组有序项目的数据结构

list = [‘apple‘,‘banner‘]

append方法 向列表末尾添加一个项目、sort方法,del 删除列表中的一个元素,指定列表,第几个元素

元组也是一个序列,元组和字符串一样是不可变的

元组通过圆括号中用逗号分割的项目定义

含有0个项目的元组 empty = ()

含有1个项目的元组 myone = (2,) 项目后必须跟一个逗号

元组最常用的用法是用在打印语句中---- %s 表

例如 zoo = (‘apple‘,‘people‘)

字典,由键和值组成的序列,中间用冒号,一般称为json

d = {key1:value1,key2:value2}

字典是dict类的实例/对象

字典的items()方法,for in 循环

for name,address in ab.items(): 打印键和值

a in ab:     检测一个键值是否存在

序列

列表、元组、和字符串都是序列,序列的特点就是 索引操作符 和 切片操作符,

索引就是从序列中抓取特定项目

切片操作符让我们能够获取序列的一个切片,即一部分序列

变量名指定计算机中存储那个对象的内存,这被称作名称到对象的绑定

【序列的神奇:可以用相同的方法访问元组、列表和字符串】

根据索引取得序列中的值,可以是负数,-1 是最后一个元素

切片操作符 是 序列名后跟一个方括号,方括号中有一对可选的数字,数是可选的,冒号是必须的

冒号之前的数表示切片开始的位置,冒号之后的数表示到哪里结束,开始位置被包含在序列切片中,结束位置被包含在序列切片外

[:] 返回整个序列的拷贝

列表的赋值语句不创建拷贝,必须使用切片操作符list[:]来创建序列的拷贝

[:] 这种写法是拷贝当前对象,赋值的化是引用

字符串也是对象,在程序中使用的字符串是str类的对象

startswith()    测试字符串是否以给定字符串开始 name.startwith("war")

in         用来检验给定字符串是否为另一个字符串的一部分 a in name

find    找出给定字符串在另一个字符串中的位置,返回-1 表示找不到子字符串

join()     将序列用分隔符拼接的字符串  分隔符.join(序列)

python 备份程序

使用 os模块、time模块

time.strftime()     定制时间%Y%m%d%H%M%S

zip -q 表是zip命令安静的工作    -r 表示zip命令对目录递归的工作

os.path.exists        检验是否有以当前日期作为名称的目录

os.mkdir            创建目录

os.sep变量用法         根据操作系统给出目录分隔符,window \\ linux / ,具有可移植性

os.system() 运行命令    命令运行成功,返回0

最理想的创建备份的方法是使用 zipfile 和 tarfile

软件开发过程

1,什么(分析)

2,如何(设计)

3,编写(实施)

4,测试(测试与调试)

5,使用(实施或开发)

6,维护(优化)

9,面向对象

属于一个对象或类的变量被称为域,

域和方法合称为类的属性

类使用class创建,类的域和方法被列在一个缩进块中

对象本身 self

类的方法必须有一个额外的第一个参数名称 self

假如一个类为 MyClass 和这个类的实例 MyObject

python 调用对象方法 MyObject.method(arg1,arg2)

会由python自动转为 MyClass.method(MyObject, arg1, arg2) ,

__init__ 方法,对象初始化操作,类的对象被建立时,马上运行

__del__ 方法,对象消逝的时候被运行

def __init__(self)

def __del__(self)

类与对象的方法

两种类型的域:类的变量和对象的变量

类的变量由一个类的所有对象共享使用

对象的变量由类的每个实例拥有

__privatevar            私有变量

只想在类或对象中使用    应该以单下划线前缀

继承---通过继承,提高代码的重用性

class Children(Parent):        继承父类

python 不会自动继承基类的 constructor ,这里指__init__

__base__

输入/输出

使用file类的对象打开一个文件,file("open.txt","w")

‘r‘    读模式,‘w‘ 写模式,‘a‘ 追加模式

write() 方法写入文件

close 关闭文件,readline()  方法来读文件的每一行

储存器====储存和取储存

python提高的一个标准模块,称为pickle,可以持久的储存对象,完美无缺的取出来

还有另一个模块称为 cpickle,和pickle功能一样,比pickle快1000倍

import cpickle as p     使用更短的模块名

p.dump(filelist,f)

用储存器模块的dump函数,把对象储存到打开的文件中,这个过程称为储存

p.load(f)

使用 pickle模块的load函数的返回来取回对象,这个过程称为取储存

异常

错误是由错误处理器所做的工作

处理异常

try .. except

把可能引发错误的语句放入try中

把错误处理语句放入 except中

except 可以处理单一的错误与异常

如果没有给出错误或异常的名称,它会处理所有的错误和异常

引发异常:

使用raise语句引发异常,Error 或 Exception类

try..finally

在一个try块下,可以同时使用except从句和finally块

python 标准库

python标准库是随python附带安装的,包含大量及其有用的模块

sys模块包含系统对应的功能

os模块包含普遍的操作系统功能

os.name         显示你正在使用的平台

os.system        函数用来运行shell命令

os.path.split     函数返回一个路径的目录和文件名,返回元组

os.path.isfile()     检验给出的路径是否是一个文件

os.path.isdir()     检验给出的路径是否是一个目录

os.path.exists()     检验给出的真的存在

http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html

标签:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值