python笔记课件_第1页
python笔记课件_第2页
python笔记课件_第3页
python笔记课件_第4页
python笔记课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、转义字符描述(在行尾时) 续行符反斜杠符号'单引号"双引号a响铃b退格(Backspace)e转义000空n换行v纵向制表符t横向制表符r回车f换页oyy八进制数,yy代表的字符,例如:o12代表换行xyy十六进制数,yy代表的字符,例如:x0a代表换行other其它的字符以普通格式输出运算符描述实例+加 - 两个对象相加10+20 输出结果 30-减 - 得到负数或是一个数减去另一个数10-20 输出结果 -10*乘 - 两个数相乘或是返回一个被重复若干次的字符串10 * 20 输出结果 200/除 - x除以y20/10 输出结果 2%取余 - 返回除法的余数20%10

2、输出结果 0*幂 - 返回x的y次幂10*2 输出结果 100/取整除 - 返回商的整数部分9/2 输出结果 4 , 9.0/2.0 输出结果 4.0· S.upper() #S中的字母大写· S.lower() #S中的字母小写· S.capitalize() #首字母大写· S.istitle() #单词首字母是否大写的,且其它为小写,注网友白羽毛指出,这里表述不准确。非常感谢他。为了让看官对这些大小写问题有更深刻理解,我从新写下面的例子,请看官审查。再次感谢白羽毛。· S.isupper() #S中的字母是否全是大写· S.is

3、lower() #S中的字母是否全是小写S.title 其中空格隔开的所有的都大写>>> a2:5'llo'这就是截取字符串的一部分,注意:所截取部分的第一个字符(l)对应的编号是(2),从这里开始;结束的字符是(o),对应编号是(4),但是结束的编号要增加1,不能是4,而是5.这样截取到的就是上面所要求的了。· S.strip() 去掉字符串的左右空格· S.lstrip() 去掉字符串的左边空格· S.rstrip() 去掉字符串的右边空格>>> print "小明说:"我没有少圆明园&q

4、uot;"小明说"我没有少圆明园"这个例子中,为了打印出那句含有双引号的字符串,也就是双引号是字符串的一部分了,使用了一个符号:,在python中,将这个符号叫做转义符。本来双引号表示包括字符串,它不是字符串一部分,但是如果前面有转义符,那么它就失去了原来的含义,转化为字符串的一部分,相当于一个特殊字符了。下面用转义符在打印第二句话:>>> print 'what's your name?'what's your name?=等于 - 比较对象是否相等(a = b) 返回 False。!=不等于 - 比较两个对象是

5、否不相等(a != b) 返回 true.>大于 - 返回x是否大于y(a > b) 返回 False。<小于 - 返回x是否小于y(a < b) 返回 true。>=大于等于 - 返回x是否大于等于y。(a >= b) 返回 False。<=小于等于 - 返回x是否小于等于y。(a <= b) 返回 true。运算符描述实例and布尔"与" - 如果x为False,x and y返回False,否则它返回y的计算值。(都是ture 才返回 ture)(a and b) 返回 true。or布尔"或" -

6、如果x是True,它返回True,否则它返回y的计算值。(有一个是ture就好了)(a or b) 返回 true。not布尔"非" - 如果x为True,返回False。如果x为False,它返回True。(都是false才返回ture)not(a and b) 返回 false。if 条件1: 执行的内容1elif 条件2: 执行的内容2elif 条件3: 执行的内容3else: 执行的内容4如果对象是空,返回False,如果不是,则返回True;如果对象是False,返回False。>>> alst = 1,2,3,4,5,6>>>

7、 alst:-1 #反转6, 5, 4, 3, 2, 1list(reversed(alst)翻转reversed函数的详细说明:它返回一个可以迭代的对象,不过是已经将原来的序列对象反转了。比如:>>> list(reversed("abcd")'d', 'c', 'b', 'a'特别说明一下,这个东西,在dict和set中都用.但是,如上面的方法建立的是dict,不是set.这是python规定的.要建立set,只能用前面介绍的方法了.>>> a_set = 'a&

8、#39;,'i' #这回就是set了吧>>> type(a_set) <type 'set'> #果然>>> a_set.add("qiwsir") #增加一个元素>>> a_set #原处修改,即原来的a_set引用对象已经改变set('i', 'a', 'qiwsir')>>> b_set = set("python")>>> type(b_set)<type &#

9、39;set'>>>> b_setset('h', 'o', 'n', 'p', 't', 'y')>>> b_set.add("qiwsir")>>> b_setset('h', 'o', 'n', 'p', 't', 'qiwsir', 'y')>>> b_set.add(1,2,

10、3) #这样做是不行滴,跟前面一样,报错.Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: unhashable type: 'list'>>> b_set.add('1,2,3') #可以这样!>>> b_setset('1,2,3', 'h', 'o', 'n', 'p', 't&#

11、39;, 'qiwsir', 'y')查看时是随机排列,元素被分解。除了上面的增加元素方法之外,还能够从另外一个set中合并过来元素,方法是set.update(s2)>>> help(set.update)update(.) Update a set with the union of itself and others.>>> s1set('a', 'b')>>> s2set('github', 'qiwsir')>>> s

12、1.update(s2) #把s2的元素并入到s1中.>>> s1 #s1的引用对象修改set('a', 'qiwsir', 'b', 'github')>>> s2 #s2的未变set('github', 'qiwsir')A、 B的并集,即A、B所有元素>>> a | b #可以有两种方式,结果一样set('a', 'i', 'l', 'o', 'q', '

13、;s', 'r', 'w')>>> a.union(b)set('a', 'i', 'l', 'o', 'q', 's', 'r', 'w')A、 B的交集,即A、B所公有的元素>>> a & b #两种方式,等价set('q', 'i')>>> ersection(b)set('q', 'i'

14、)A相对B的差(补),即A相对B不同的部分元素>>> aset('q', 'i', 's', 'r', 'w')>>> bset('a', 'q', 'i', 'l', 'o')>>> a - bset('s', 'r', 'w')>>> a.difference(b)set('s', 'r&#

15、39;, 'w')-A、B的对称差集>>> aset('q', 'i', 's', 'r', 'w')>>> bset('a', 'q', 'i', 'l', 'o')>>> a.symmetric_difference(b)set('a', 'l', 'o', 's', 'r', 

16、9;w')数据类型总结对象类型举例int/float123, 3.14str'qiwsir.github.io'list1, 2, 'three', 4dict'name':"qiwsir","lang":"python"tuple(1, 2, "three")setset("qi"), "q", "i"增强赋值语句等价于语句x+=yx = x+yx-=yx = x-yx*=yx = x*yx/=yx

17、 = x/y其它类似结构:x&=y x|=y x=y x%=y x>>=y x<<=y x*=y x/=y>>> number1, 2, 3, 4, 5>>> number2 = >>> for i in number:. i = i+2. number2.append(i). >>> number23, 4, 5, 6, 7如果用上面的增强赋值,i = i+2可以写成 i +=2,试一试吧:>>> number1, 2, 3, 4, 5>>> numbe

18、r2 = >>> for i in number:. i +=2. number2.append(i). >>> number23, 4, 5, 6, 7>>> a = 3.1415926>>> print "%d"%a #%d只能输出整数,int类型3>>> print "%f"%a#%f输出浮点数3.141593>>> print "%.2f"%a#按照要求输出小数位数3.14>>> print "

19、;%.9f"%a #如果要求的小数位数过多,后面就用0补全3.141592600>>> b = 3 >>> print "%4d"%b #如果是整数,这样写要求该整数占有四个位置,于是在前面增加三个空格 3 #而不是写成0003的样式>>> myinfo'website': 'qiwsir.github.io', 'name': 'qiwsir', 'room': 703>>> print "qiwsir

20、 is in %(room)d"%myinfoqiwsir is in 703看官是否看明白上面的输出了?有点意思。这样的输出算是对前面输出的扩展了。出了这个扩展之外,在输出的时候,还可以用一个名曰:format的东西,这里面看不到%,但是多了。看实验先:>>> print "My name is 0 and I am in 1".format("qiwsir",703) #将format后面的内容以此填充My name is qiwsir and I am in 703>>> "My websit

21、e is website".format(website="qiwsir.github.io") #里面那个相当于一个变量了吧'My website is qiwsir.github.io'>>> myinfo'website': 'qiwsir.github.io', 'name': 'qiwsir', 'room': 703>>> template = "I am 0name">>> temp

22、late.format(myinfo)'I am qiwsir'>>> template = "I am 0name. My QQ is qq">>> template.format(myinfo,qq="26066913")'I am qiwsir. My QQ is 26066913'位置后面跟键,就能得到format的参数中字典的键对应的值。太罗嗦了吧,看例子就明白了。出了根据位置得到,还能够根据关键词得到:>>> name = "qiwsir"

23、; if "laoqi" else "github">>> name'qiwsir'>>> name = 'qiwsir' if "" else "python">>> name'python'>>> name = "qiwsir" if "github" else "">>> name'qiwsir'总

24、结一下:A = Y if X else Z什么意思,结合前面的例子,可以看出:· 如果X为真,那么就执行A=Y·如果X为假,就执行A=Z·x = 2 y = 8 a = "python" if x>y else "qiwsir" a 'qiwsir' b = "python" if x<y else "qiwsir" b 'python'·#! /usr/bin/env python#coding:UTF-8 import rand

25、omi=0while i < 4: print'*' num = input('请您输入0到9任一个数:') #李同学用的是python3 xnum = random.randint(0,9) x = 3 - i if num = xnum: print'运气真好,您猜对了!' break elif num > xnum: print'''您猜大了!n哈哈,正确答案是:%sn您还有%s次机会!''' %(xnum,x) elif num < xnum: print''

26、;'您猜小了!n哈哈,正确答案是:%sn您还有%s次机会!''' %(xnum,x) print'*' i += 1我们就用这段程序来分析一下,首先看while i<4,这是程序中为猜测限制了次数,最大是三次,请看官注意,在while的循环体中的最后一句:i +=1,这就是说每次循环到最后,就给i增加1,当bool(i<4)=False的时候,就不再循环了。当bool(i<4)=True的时候,就执行循环体内的语句。在循环体内,让用户输入一个整数,然后程序随机选择一个整数,最后判断随机生成的数和用户输入的数是否相等,并且用if语

27、句判断三种不同情况。定义doc输出文档>>> def qiwsir():. """I like python""". print "http:/qiwsir.github.io". >>> qiwsir()http:/qiwsir.github.io>>> print(qiwsir._doc_) #用这种方法可以看自己写的函数中的文档I like python>>> help(qiwsir) #其实就是调用_doc_显示的内容Help on f

28、unction qiwsir in module _main_:qiwsir() I like pythonisdigit()方法语法:str.isdigit()返回值如果字符串只包含数字则返回 True 否则返回 False。实例以下实例展示了isdigit()方法的实例:#!/usr/bin/pythonstr = "123456" # Only digit in this stringprint str.isdigit();str = "this is string example.wow!"print str.isdigit();以上实例输出结果

29、如下:True;False这个是随机数小游戏While ture循环""" This is a game. I am Qiwei. I like python. I am writing python articles in my website. My website is http:/qiwsir.github.io You can learn python free in it."""前面可以增加doc信息可以查看的#!/usr/bin/env python#coding:utf-8import randomnumber = r

30、andom.randint(1,100)guess = 0while True: num_input = raw_input("please input one integer that is in 1 to 100:") guess +=1 if not num_input.isdigit(): print "Please input interger." elif int(num_input)<0 and int(num_input)>=100: print "The number should be in 1 to 100.&

31、quot; else: if number=int(num_input): print "OK, you are good.It is only %d, then you successed."%guess break elif number>int(num_input): print "your number is more less." elif number<int(num_input): print "your number is bigger." else: print "There is someth

32、ing bad, I will not work"x = 2def funcx(): global x x = 9 print "this x is in the funcx:->",xfuncx() print "-" print "this x is out of funcx:->",x以上两段代码的不同之处在于,后者在函数内多了一个global x,这句话的意思是在声明x是全局变量,也就是说这个x跟函数外面的那个x同一个,接下来通过x=9将x的引用对象变成了9。所以,就出现了下面的结果。>>&g

33、t; def foo(x,y,z,*args,*kargs):. print x . print y. print z. print args. print kargs . >>> foo('qiwsir',2,"python")qiwsir2python()>>> foo(1,2,3,4,5)123(4, 5)>>> foo(1,2,3,4,5,name="qiwsir")123(4, 5)'name': 'qiwsir' 1class GrandPa

34、: 2 def _init_(self): 3 print('I'm GrandPa') 4 5 6 class Father(GrandPa): 7 def _init_(self): 8 print('I'm Father!') 9 10 class Son(Father):11 """A simple example class"""12 i = 1234513 def _init_(self):14 print('这是构造函数,son')15 def sayHel

35、lo(self):16 return 'hello world'17 18 if _name_ = '_main_':19 son = Son()20 # 类型帮助信息 21 print('类型帮助信息: ',Son._doc_)22 #类型名称23 print('类型名称:',Son._name_)24 #类型所继承的基类25 print('类型所继承的基类:',Son._bases_)26 #类型字典27 print('类型字典:',Son._dict_)28 #类型所在模块29 print('类型所在模块:',Son._module_)30 #实例类型31 print('实例类型:',Son()._class_)复制代码运行情况:复制代码Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) MSC v.1600 32 bit (Intel) on win32Type "copyright", "credits

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论