干货:Python3-入门教程-简单但比较不错-_第1页
干货:Python3-入门教程-简单但比较不错-_第2页
干货:Python3-入门教程-简单但比较不错-_第3页
干货:Python3-入门教程-简单但比较不错-_第4页
干货:Python3-入门教程-简单但比较不错-_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

Python已经是3.1版本了,与时俱进更新教程.2.5或2.6请看上一篇文章。本文适合有Java编程经验的程序员快速熟悉Python本文程序在windows xp+python3.1a1 测试通过.本文提到的idle指python shell,即安装python后你在菜单看到的IDLE(python gui)在idle里ctrl+n可以打开一个新窗口,输入源码后ctrl+s可以保存,f5运行程序.凡打开新窗口即指ctrl+n的操作.1 你好12 字符串和数字23 列表34 字典45 字符串56 条件和循环语句67 函数78 异常处理89 文件处理810 类和继承911 包机制912 内建帮助手册111 你好复制代码代码如下:#打开新窗口,输入:#! /usr/bin/python# -*- coding: utf8 -*-s1=input(Input your name:)print(你好,%s % s1)知识点:* input(某字符串)函数:显示某字符串,并等待用户输入.* print()函数:如何打印.* 如何应用中文* 如何用多行注释2 字符串和数字但有趣的是,在javascript里我们会理想当然的将字符串和数字连接,因为是动态语言嘛.但在Python里有点诡异,如下:复制代码代码如下:#! /usr/bin/pythona=2b=testc=a+b运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换复制代码代码如下:#! /usr/bin/python#运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换a=2b=testc=str(a)+bd=1111e=a+int(d)#How to print multiply valuesprint (c is %s,e is %i % (c,e)知识点:* 用int和str函数将字符串和数字进行转换* 打印以#开头,而不是习惯的/* 打印多个参数的方式3 列表复制代码代码如下:#! /usr/bin/python# -*- coding: utf8 -*-#列表类似Javascript的数组,方便易用#定义元组word=a,b,c,d,e,f,g#如何通过索引访问元组里的元素a=word2print (a is: +a)b=word1:3print (b is: )print (b) # index 1 and 2 elements of word.c=word:2print (c is: )print (c) # index 0 and 1 elements of word.d=word0:print (d is: )print (d) # All elements of word.#元组可以合并e=word:2+word2:print (e is: )print (e) # All elements of word.f=word-1print (f is: )print (f) # The last elements of word.g=word-4:-2print (g is: )print (g) # index 3 and 4 elements of word.h=word-2:print (h is: )print (h) # The last two elements.i=word:-2print (i is: )print (i) # Everything except the last two charactersl=len(word)print (Length of word is: + str(l)print (Adds new element)word.append(h)print (word)#删除元素del word0print (word)del word1:3print (word)知识点:* 列表长度是动态的,可任意添加删除元素.* 用索引可以很方便访问元素,甚至返回一个子列表* 更多方法请参考Python的文档4 字典复制代码代码如下:#! /usr/bin/pythonx=a:aaa,b:bbb,c:12print (xa)print (xb)print (xc)for key in x:print (Key is %s and value is %s % (key,xkey)知识点:* 将他当Java的Map来用即可.5 字符串比起C/C+,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧.复制代码代码如下:#! /usr/bin/pythonword=abcdefga=word2print (a is: +a)b=word1:3print (b is: +b) # index 1 and 2 elements of word.c=word:2print (c is: +c) # index 0 and 1 elements of word.d=word0:print (d is: +d) # All elements of word.e=word:2+word2:print (e is: +e) # All elements of word.f=word-1print (f is: +f) # The last elements of word.g=word-4:-2print (g is: +g) # index 3 and 4 elements of word.h=word-2:print (h is: +h) # The last two elements.i=word:-2print (i is: +i) # Everything except the last two charactersl=len(word)print (Length of word is: + str(l)中文和英文的字符串长度是否一样?复制代码代码如下:#! /usr/bin/python# -*- coding: utf8 -*-s=input(输入你的中文名,按回车继续);print (你的名字是 : +s)l=len(s)print (你中文名字的长度是:+str(l)知识点:类似Java,在python3里所有字符串都是unicode,所以长度一致.6 条件和循环语句复制代码代码如下:#! /usr/bin/python#条件和循环语句x=int(input(Please enter an integer:)if x0:x=0print (Negative changed to zero)elif x=0:print (Zero)else:print (More)# Loops Lista = cat, window, defenestratefor x in a:print (x, len(x)#知识点:# * 条件和循环语句# * 如何得到控制台输入7 函数复制代码代码如下:#! /usr/bin/python# -*- coding: utf8 -*-def sum(a,b):return a+bfunc = sumr = func(5,6)print (r)# 提供默认值def add(a,b=2):return a+br=add(1)print (r)r=add(1,5)print (r)一个好用的函数#! /usr/bin/python# -*- coding: utf8 -*-# The range() functiona =range (1,10)for i in a:print (i)a = range(-2,-11,-3) # The 3rd parameter stands for stepfor i in a:print (i)知识点:Python 不用来控制程序结构,他强迫你用缩进来写程序,使代码清晰.定义函数方便简单方便好用的range函数8 异常处理复制代码代码如下:#! /usr/bin/pythons=input(Input your age:)if s =:raise Exception(Input must no be empty.)try:i=int(s)except Exception as err:print(err)finally: # Clean up actionprint(Goodbye!)9 文件处理对比Java,python的文本处理再次让人感动复制代码代码如下:#! /usr/bin/pythonspath=D:/download/baa.txtf=open(spath,w) # Opens file for writing.Creates this file doesnt exist.f.write(First line 1.n)f.writelines(First line 2.)f.close()f=open(spath,r) # Opens file for readingfor line in f:print(每一行的数据是:%s%line)f.close()知识点:open的参数:r表示读,w写数据,在写之前先清空文件内容,a打开并附加内容.打开文件之后记得关闭10 类和继承复制代码代码如下:class Base:def _init_(self):self.data = def add(self, x):self.data.append(x)def addtwice(self, x):self.add(x)self.add(x)# Child extends Baseclass Child(Base):def plus(self,a,b):return a+boChild =Child()oChild.add(str1)print (oChild.data)print (oChild.plus(2,3)知识点:* self:类似Java的this参数11 包机制每一个.py文件称为一个module,module之间可以互相导入.请参看以下例子:复制代码代码如下:# a.pydef add_func(a,b):return a+b# b.pyfrom a import add_func # Also can be : import aprint (Import add_func from module a)print (Result of 1 plus 2 is: )print (add_func(1,2) # If using import a , then here should be a.add_funcmodule可以定义在包里面.Python定义包的方式稍微有点古怪,假设我们有一个parent文件夹,该文件夹有一个child子文件夹.child中有一个module a.py . 如何让Python知道这个文件层次结构?很简单,每个目录都放一个名为_init_.py 的文件.该文件内容可以为空.这个层次结构如下所示:parent-_init_.py-child- _init_.py-a.pyb.py那么Python如何找到我们定义的module?在标准包sys中,path属性记录了Python的包路径.你可以将之打印出来:import sysprint(sys.path)通常我们可以将module的包路径放到环境变量PYTHONPATH中,该环境变量会自动添加到sys.path属性.另一种方便的方法是编程中直接指定我们的module路径到sys.path 中:复制代码代码如下:import sysimport ossys.path.append(os.getcwd()+parentchild)print(sys.path)from a import add_funcprint (sys.path)print (Import add_func from module a)print (Result of

温馨提示

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

评论

0/150

提交评论