Python程序设计-清华大学出版社-董付国第1章-基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1章基础知识1.0Python是一种怎样的语言解释型语言,伪编译胶水语言开源跨平台免费、自由软件强类型、动态类型自动内存管理面向对象有大量可用的库增加其他语言编写并编译的模块即可扩展功能1.1Python版本之争2.x:一边鄙视一边用3.x:必然的趋势多版本共存与切换简便方法:更改系统环境变量path查看已安装版本的方法(在所启动的IDLE界面也可以直接看到):importsyssys.version'2.7.8(default,Jun302014,16:08:48)[MSCv.150064bit(AMD64)]'sys.version_infosys.version_info(major=2,minor=7,micro=8,releaselevel='final',serial=0)1.2安装Python://://bugs.python.org/默认编程环境:IDLE常用快捷键:Alt+P、Alt+N:浏览历史命令Ctrl+F6:重启Shell,之前定义的对象全部无效F1:打开Python帮助文档Alt+/:自动补全前面曾经出现过的单词,在多个单词中循环选择Ctrl+[、Ctrl+]:缩进代码Alt+3、Alt+4:注释、取消注释其他可选开发环境:wxPython、Jython、1.3使用pip管理第三方包Python2中需要单独安装下载地址:安装方法:cmd==pythonget-pip.py用法示例pipinstallNumPypiplistpipinstall--upgradeSomePackagepipuninstallSomePackagePython3安装包中已默认包含pip1.4Python基础知识1.4.1Python的对象模型对象是python语言中最基本的概念,在python中处理的每样东西都是对象。python中有许多内置对象可供编程者使用,内置对象可直接使用,如数字、字符串、列表、del等;非内置对象需要导入模块才能使用,如正弦函数sin(x),随机数产生函数random()等。1.4.1Python的对象模型常用内置对象对象类型示例数字1234,3.14,3+4j字符串'swfu',I'mstudent,'''Python'''日期2012-08-25列表[1,2,3]字典{1:'food',2:'taste',3:'import'}元组(2,-5,6)文件f=open('data.dat','r')集合set('abc'),{'a','b','c'}布尔型True,False空类型None编程单元类型函数、模块、类1.4.2python的变量和引用1.变量的创建x=3创建了变量x,不需要提前声明变量a,b=3,5a,b=b,a2.引用在python中从变量到对象的连接称为引用。x=3变量拥有自己的存储空间,变量连接到对象是该变量存储了对象单元的内存地址,并没有存储对象的值。x3变量对象引用1.4.2python的变量和引用3.共享引用共享引用是指多个变量引用同一个对象。下面的语句使两个变量都引用同一个对象3a=3b=a使用id函数可以查看对象的内存地址4.垃圾回收机制对于没有任何变量指向的值,Python自动将其删除。Python跟踪所有的值,并自动删除不再有变量指向的值。1.4.2python的变量和引用5.对象类型的动态的,强类型a=3type(a)type'int'a='4'type(a)type'str'a={3,5}type(a)type'set'a=[1,2,3]type(a)type'list'1.4.2python的变量和引用6.变量命名以字母或下划线(有特殊含义)开头变量名中不能有空格以及标点符号(括号、引号、逗号、斜线、反斜线、冒号、句号、问号等等)不要使用关键字(在keyword模块中)作变量名不要使用系统内置的模块名或函数名(可以通过dir(__builtins__)查看)作变量名大小写敏感1.4.3数字数字是python中最常用的对象,属于不可变对象。可以表示任意大小的数字。a=99999999999999999999999999999999a*a9999999999999999999999999999999800000000000000000000000000000001La**3999999999999999999999999999999970000000000000000000000000000000299999999999999999999999999999999LPython的IDEL交互界面可以当做简便计算器来使用。1.4.3数字1.4.3.1整数十进制整数如,0、-1、9、123十六进制整数,需要16个数字0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f来表示整数,必须以0x开头,如0x10、0xfa、0xabcdef八进制整数,只需要8个数字0、1、2、3、4、5、6、7来表示整数,必须以0o开头,如0o35、0o11二进制整数、只需要2个数字0、1来表示整数,必须以0b开头如,0b101、0b1001.4.3数字1.4.3.2浮点数浮点数又称小数,15.0、0.37、-11.2、1.2e2、314.15e-21.4.3数字1.4.3.3复数Python中的复数与数学上的复数一致,由实部和虚部构成,并且使用j或J来表示虚部。a=3+4jb=5+6jc=a+bc8+10jc.real#复数的实部8.0c.imag#复数的虚部10.0a.conjugate()(3-4j)1.4.4字符串用单引号、双引号或三引号括起来的符号系列称为字符串单引号、双引号、三单引号、三双引号可以互相嵌套,用来表示复杂字符串。'abc'、'123'、'中国'、Python字符串属于不可变序列空串表示为''或三引号'''或表示的字符串可以换行,支持排版较为复杂的字符串;三引号还可以在程序中表示较长的注释。1.4.4字符串1.字符串合并a='abc'+'123'#生成新对象2.字符串格式化把对象按格式要求转换为字符串。a=3.6674'%7.3f'%a#或者直接使用str(a)'3.667'1.4.4字符串3.转义字符\n:换行符\t:制表符\r:回车\’:单引号\”:双引号\\:一个\\ddd:3位八进制数对应的字符\xhh:2位十六进制数对应的字符字符串界定符前面加字母r表示原始字符串,其中的特殊字符不进行转义,但字符串的最后一个字符不能是\。1.4.5操作符和表达式操作符描述x+y,x-y加法/字符串合并,减法/集合差集x*y,x/y,x//y,x%y乘法/重复,除法,求整商,余数/格式化(对实数可以进行整除和余数运算)x**y幂运算xy,x=y,xy,x=y大小比较,集合的包含关系比较x==y,x!=y相等比较(值),不等比较xory逻辑或(只有x为假才会计算y)xandy逻辑与(只有x为真才会计算y)notx逻辑非xiny,xnotiny成员与集合的关系xisy,xisnoty对象实体测试(地址)|、^、&、、位运算符1.4.6常用内置函数内置函数不需要导入任何模块即可使用执行下面的命令可以列出所有内置函数dir(__builtins__)1.4.6常用内置函数函数功能abs(x)返回数字x的绝对值bin(x)把数字x转换为二进制串chr(x)返回编码为x的字符eval(s[,globals[,locals]])计算字符串中表达式的值并返回float(x)把数字或字符串x转换为浮点数并返回help(obj)返回对象obj的帮助信息hex(x)把数字x转换为十六进制串id(obj)返回对象obj的标识input([提示串])接受键盘输入,返回字符串len(obj)返回对象obj包含的元素个数1.4.6常用内置函数oct(x)把数字x转换为八进制串ord(s)返回1个字符s的编码。chr(ord('3')+1)=='4'range([start,]end[,step])返回一个等差数列,不包括终值round(x[,小数位数])对x进行四舍五入。若不指定小数位数,则返回整数。str(obj)把对象obj转换为字符串int(x[,d])返回数字整数部分,或把d进制的字符串x转换为十进制并返回,d默认为十进制list(x),set([obj]),tuple(x)把对象转换为列表、集合或元组并返回max(x),min(x),sum(x)返回序列中的最大值、最小值或数值之和pow(x,y)返回x的y次方sorted(列表[,cmp[,key[reverse]]]返回排序后的列表type(obj)返回对象obj的类型1.4.7对象的删除Python中删除对象用del语句。del用来删除一个对象,并释放对象所占资源。del的用法演示如下:a=[1,2,3]dela[1]a[1,3]x=5x5delx#此后x就不存在了1.4.8基本输入输出用Python进行程序设计,输入是通过input()函数来实现的,imput()的一般格式为:x=input('提示:')该函数返回输入的对象。可输入数字、字符串和其它任意类型对象。1.4.8基本输入输出输出是通过print语句来完成的,print语句的一般格式为:print对象1,对象2,...,对象n在Python3中,print是函数,而不是语句。1.4.8基本输入输出在Python2.7.8之前的版本中进行重定向输出的用法:fp=open(r'c:\mytest.txt','a+')printfp,Hello,worldfp.close()在Python3.4.2版本中进行重定向输出的用法:fp=open(r'd:\mytest.txt','a+')print('Hello,world!',file=fp)fp.close()1.4.9模块的使用Python默认安装仅包含部分基本或核心模块,但用户可以安装大量的扩展模块,pip是管理模块的重要工具。在Python启动时,仅加载了很少的一部分模块,在需要时由程序员显式地加载(可能需要先安装)其他模块。减小运行的压力,仅加载真正需要的模块和功能,且具有很强的可扩展性。1.4.9模块的使用import模块名importmathmath.sin(0.5)#求0.5的正弦importrandomx=random.random()#获得[0,1)内的随机小数y=random.random()n=random.randint(1,100)#获得[1,100]上的随机整数可以使用dir函数查看任意模块中所有的对象列表,如果调用不带参数的dir()函数,则返回当前脚本的所有名字列表。可以使用help函数查看任意模块或函数的使用帮助。1.4.9模块的使用frommathimportsin#可以减少查询次数,提高执行速度frommathimport*#谨慎使用frommathimportsinsin(3)0.1411200080598672frommathimportsinasf#别名f(3)0.1411200080598671.4.9模块的使用可以使用sys.modules.items()显示所有预加载模块的相关信息在2.x中可以使用reload函数重新导入一个模块,在3.x中,需要使用imp模块的reload函数Python首先在当前目

1 / 44
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功