Python3 入门教程 简单但比较不错 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    本文适合有Java编程经验的程序员快速熟悉Python

    本文程序在windows xp+python3.1a1 测试通过.

    本文提到的idle指python shell,即安装python后你在菜单看到的IDLE(python gui)

    在idle里ctrl+n可以打开一个新窗口,输入源码后ctrl+s可以保存,f5运行程序.

    凡打开新窗口即指ctrl+n的操作.

    1 你好

    复制代码代码如下:

    #打开新窗口,输入:

    #! /usr/bin/python

    # -*- coding: utf8 -*-

    s1=input("Input your name:")

    print("你好,%s" % s1)

    '''

    知识点:

    * input("某字符串")函数:显示"某字符串",并等待用户输入.

    * print()函数:如何打印.

    * 如何应用中文

    * 如何用多行注释

    '''

    2 字符串和数字

    但有趣的是,在javascript里我们会理想当然的将字符串和数字连接,因为是动态语言嘛.但在Python里有点诡异,如下:

    复制代码代码如下:

    #! /usr/bin/python

    a=2

    b="test"

    c=a+b

    运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换

    复制代码代码如下:

    #! /usr/bin/python

    #运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换

    a=2

    b="test"

    c=str(a)+b

    d="1111"

    e=a+int(d)

    #How to print multiply values

    print ("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=word[2]

    print ("a is: "+a)

    b=word[1:3]

    print ("b is: ")

    print (b) # index 1 and 2 elements of word.

    c=word[:2]

    print ("c is: ")

    print (c) # index 0 and 1 elements of word.

    d=word[0:]

    print ("d is: ")

    print (d) # All elements of word.

    #元组可以合并

    e=word[:2]+word[2:]

    print ("e is: ")

    print (e) # All elements of word.

    f=word[-1]

    print ("f is: ")

    print (f) # The last elements of word.

    g=word[-4:-2]

    print ("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[:-2]

    print ("i is: ")

    print (i) # Everything except the last two characters

    l=len(word)

    print ("Length of word is: "+ str(l))

    print ("Adds new element")

    word.append('h')

    print (word)

    #删除元素

    del word[0]

    print (word)

    del word[1:3]

    print (word)

    '''

    知识点:

    * 列表长度是动态的,可任意添加删除元素.

    * 用索引可以很方便访问元素,甚至返回一个子列表

    * 更多方法请参考Python的文档

    '''

    4 字典

    复制代码代码如下:

    #! /usr/bin/python

    x={'a':'aaa','b':'bbb','c':12}

    print (x['a'])

    print (x['b'])

    print (x['c'])

    for key in x:

    print ("Key is %s and value is %s" % (key,x[key]))

    '''

    知识点:

    * 将他当Java的Map来用即可.

    '''

    5 字符串

    比起C/C++,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧.

    复制代码代码如下:

    #! /usr/bin/python

    word="abcdefg"

    a=word[2]

    print ("a is: "+a)

    b=word[1:3]

    print ("b is: "+b) # index 1 and 2 elements of word.

    c=word[:2]

    print ("c is: "+c) # index 0 and 1 elements of word.

    d=word[0:]

    print ("d is: "+d) # All elements of word.

    e=word[:2]+word[2:]

    print ("e is: "+e) # All elements of word.

    f=word[-1]

    print ("f is: "+f) # The last elements of word.

    g=word[-4:-2]

    print ("g is: "+g) # index 3 and 4 elements of word.

    h=word[-2:]

    print ("h is: "+h) # The last two elements.

    i=word[:-2]

    print ("i is: "+i) # Everything except the last two characters

    l=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 x<0:

    x=0

    print ("Negative changed to zero")

    elif x==0:

    print ("Zero")

    else:

    print ("More")

    # Loops List

    a = ['cat', 'window', 'defenestrate']

    for x in a:

    print (x, len(x))

    #知识点:

    # * 条件和循环语句

    # * 如何得到控制台输入

    7 函数

    复制代码代码如下:

    #! /usr/bin/python

    # -*- coding: utf8 -*-

    def sum(a,b):

    return a+b

    func = sum

    r = func(5,6)

    print (r)

    # 提供默认值

    def add(a,b=2):

    return a+b

    r=add(1)

    print (r)

    r=add(1,5)

    print (r)

    一个好用的函数

    #! /usr/bin/python

    # -*- coding: utf8 -*-

    # The range() function

    a =range (1,10)

    for i in a:

    print (i)

    a = range(-2,-11,-3) # The 3rd parameter stands for step

    for i in a:

    print (i)

    知识点:

    Python 不用{}来控制程序结构,他强迫你用缩进来写程序,使代码清晰.

    定义函数方便简单

    方便好用的range函数

    8 异常处理

    复制代码代码如下:

    #! /usr/bin/python

    s=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 action

    print("Goodbye!")

    9 文件处理

    对比Java,python的文本处理再次让人感动

    复制代码代码如下:

    #! /usr/bin/python

    spath="D:/download/baa.txt"

    f=open(spath,"w") # Opens file for writing.Creates this file doesn't exist.

    f.write("First line 1.\n")

    f.writelines("First line 2.")

    f.close()

    f=open(spath,"r") # Opens file for reading

    for 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 Base

    class Child(Base):

    def plus(self,a,b):

    return a+b

    Child =Child()

    oChild.add("str1")

    print (oChild.data)

    print (oChild.plus(2,3))

    '''

    知识点:

    * self:类似Java的this参数

    '''

    11 包机制

    每一个.py文件称为一个module,module之间可以互相导入.请参看以下例子:

    复制代码代码如下:

    # a.py

    def add_func(a,b):

    return a+b

    # b.py

    from a import add_func # Also can be : import a

    print ("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_func"

    module可以定义在包里面.Python定义包的方式稍微有点古怪,假设我们有一个parent文件夹,该文件夹有一个child子文件夹.child中有一个module a.py . 如何让Python知道这个文件层次结构?很简单,每个目录都放一个名为_init_.py 的文件.该文件内容可以为空.这个层次结构如下所示:

    parent

    --__init_.py

    --child

    -- __init_.py

    --a.py

    b.py

    那么Python如何找到我们定义的module?在标准包sys中,path属性记录了Python的包路径.你可以将之打印出来:

    import sys

    print(sys.path)

    通常我们可以将module的包路径放到环境变量PYTHONPATH中,该环境变量会自动添加到sys.path属性.另一种方便的方法是编程中直接指定我们的module路径到sys.path 中:

    复制代码代码如下:

    import sys

    import os

    sys.path.append(os.getcwd()+'\\parent\\child')

    print(sys.path)

    from a import add_func

    print (sys.path)

    print ("Import add_func from module a")

    print ("Result of 1 plus 2 is: ")

    print (add_func(1,2))

    知识点:

    如何定义模块和包

    如何将模块路径添加到系统路径,以便python找到它们

    如何得到当前路径

    12 内建帮助手册

    对比C++,Java的突出进步是内建Javadoc机制,程序员可以通过阅读Javadoc了解函数用法.Python也内建了一些方便函数以便程序员参考.

    dir函数: 查看某个类/对象的方法. 如果有某个方法想不起来,请敲dir. 在idle里,试试 dir(list)

    help函数: 详细的类/对象介绍. 在idle里, 试试 help(list)

    QQ空间 搜狐微博 人人网 开心网 百度搜藏更多

    Tags:Python3 入门教程

    复制链接收藏本文打印本文关闭本文返回首页

    上一篇:Python2.5/2.6实用教程 入门基础篇

    下一篇:windows下wxPython开发环境安装与配置方法

   

相关文章

2013-11-11python BeautifulSoup使用方法详解

2014-04-0435个Python编程小技巧

2014-05-05使用python实现拉钩网上的FizzBuzzWhizz问题示例

2014-06-06python实现的一个p2p文件传输实例

2014-06-06用Python输出一个杨辉三角的例子

2013-01-01python连接sql server乱码的解决方法

2013-11-11python连接MySQL、MongoDB、Redis、memcache等数据库的方法

2014-02-02python中的yield使用方法

2013-11-11python实现系统状态监测和故障转移实例方法

2014-04-04Python使用 API发送微博的例子

   

文章评论

   

最 近 更 新

   

Python入门

python3使用urllib示例取googletranslate

Python 匹配任意字符(包括换行符)的正则

python网络编程学习笔记(三):socket网络

python的urllib模块显示下载进度示例

python根据经纬度计算距离示例

Python 深入理解yield

python实现问号表达式(?)的方法

python求素数示例分享

python使用PyV8执行javascript代码示例分

   

热 点 排 行

   

Python入门教程 超详细1小时学会

python 中文乱码问题深入分析

比较详细Python正则表达式操作指

Python字符串的encode与decode研

Python open读写文件实现脚本

Python enumerate遍历数组示例应

Python 深入理解yield

Python+Django在windows下的开发

python 文件和路径操作函数小结

python 字符串split的用法分享

最新文章