Python学习二

发布时间:2019-08-15 10:00:44编辑:auto阅读(1696)

    今天继续学习Python

    研究了一下CentOS上运行,网上推荐使用Geany做IDE,下面把安装和使用写一下


    1.使用终端,输入命令yum install geany

    2.选择“应用程序”——“编程”——“Geany”

    3.直接写一个测试代码用一下

    print("Hello world")

    然后保存为hello.py

    4.可以直接按F5运行


    可是运行时总是提示我“无法找到虚拟终端xterm”,查来查去,原来geany是利用xterm运行的,而CentOS没有自带,所以我们需要安装一个


    5.使用终端,输入命令yum install xterm,可能会提示你是否继续,输入y就行了


    6.再次运行就OK了



    ————————继续我们的学习——————————

    函数,静态语言(如:java)称之为方法

    def hello():
        print("Hello")

    定义了一个名为“hello”的函数,其功能只有一个,就是打印出“Hello”。


    之前用过“import random”来产生随机数,说明Python支持像java包一样的层级结构和调用。

    #Filename: hello.py
    def printHello():
        print("Hello")

    我们先创建一个名为“hello.py”的文件,其中包含一个名为“printHello()”的方法来打印

    #Filename: myMain.py
    import hello
    hello.printHello()

    再写一个名为“myMain.py”的文件,先用“import”来导入“hello.py”文件,然后调用它的“printHello()”方法。

    注意:myMain.py和hello.py两个文件必须在同一个目录下。


    下面我们在“hello.py”文件中增加一个版本变量,Python通常每个文件都有版本变量,取名为“__version__”(注意两个下划线),不是必须的但是约定俗成的。

    #Filename: hello.py
    def printHello():
      print("Hello")
      __version__ = '0.1'

    当我执行“hello.__version__”时报错,提示找不到“__version__”,仔细一看原来是__version__写到“printHello()”函数中了,但是怎么把它隔离出来呢?方法很狗血,居然是取消缩进。。。

    #Filename: hello.py
    def printHello():
        print("Hello")
    __version__ = '0.1'#注意,没有缩进!

    经过一再测试,即使把“__version__”放在第一行,增加缩进也会造成报错,由此可见:Python是根据缩进判断语句块的。


    “hello.py”是自己写的,那么如果一个陌生的py文件,我想知道里面都有哪些函数怎么做呢?

    Python提供了“dir()”函数

    import hello
    print(dir(hello))

    得到的结果是:

    ['__builtins__', '__cached__', '__doc__',
    '__file__', '__initializing__', '__loader__',
     '__name__', '__package__', '__version__',
    'printHello']

    可见除了我们自己定义的“__version__”和“printHello”以为,系统还自动创建了许多变量。


    import 导入时需要牺牲性能作为代价的,所以Python会产生一个“.pyc”文件,个人感觉就好像是.java文件编译后产生.class文件一样。


    我们可以用del命令删除“.pyc”中的方法和变量,如下:

    import hello
    print(dir(hello))

    得到的结果是:

    ['__builtins__', '__cached__', '__doc__',
    '__file__', '__initializing__', '__loader__',
     '__name__', '__package__', '__version__',
    'printHello']

    我们再用del删除掉“__version__”

    import hello
    del hello.__version__
    print(dir(hello))

    得到的结果是:

    ['__builtins__', '__cached__', '__doc__',
    '__file__', '__initializing__', '__loader__',
     '__name__', '__package__', 'printHello']


    看!“__version__”消失了!不用担心,删除的是“hello.pyc”中内容,“hello.py”中内容原封不动,不信可以打开看一下。

关键字

上一篇: Python环境部署

下一篇: python中的basestring