美文网首页
【编程语言】Python2 笔记

【编程语言】Python2 笔记

作者: 苏尚君 | 来源:发表于2016-04-12 00:03 被阅读28次

    Python2

    安装最新版本

    此处记录的是 Ubuntu Kylin 14.04 LTS 下的过程。[1] [2] [3]

    打开 Terminal,输入下述命令,获取最新的包

    $ cd /usr/src
    $ sudo wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
    
    # wget 所指地址是从https://www.python.org/downloads/release/python-2711/ 获取的
    

    待下载完毕后,键入下述命令解压缩

    $ tar xzf Python-2.7.11.tgz
    

    解压完毕后,依次执行下述命令

    $ cd Python-2.7.11.tgz
    $ sudo ./configure --prefix=/usr
    $ sudo make 
    $ sudo make install
    

    完成后在命令提示符下输入 python,即可看到 Python 版本已更新

    使用非 ASCII 字符(例如中文字符)[4]

    请在 Python 脚本开头输入如下代码

    # -*- coding: utf-8 -*-
    

    格式化字符串输出[5] [6] [7] [8]

    # 字符串输入输出
    name = "Su Shangjun"
    gender = "male"
    print """
    My name is %r.
    I'm a %s.
    """ % (name, gender) # 注意,使用 `%r` 来调试,查看原始输入是什么
    
    # 数字输入输出
    rawNum = raw_input("Input a number:>")
    # 下一句代码有 4 点值得注意:
    # (1)长字符串换行方法:在本行末尾结束字符串并加反斜杠(\),下一行重新开始新字符串;多参数则不必如此,只要单个参数输入完毕即可换行输入下一个参数
    # (2)使用 int() 与 float() 将参数转为整数/浮点数
    # (3)使用控制字符串精度控制 `%.3f` 与 `%.5f`使显示时小数点保留 3 位与 5 位精度
    print "It is %d in the form of integer, "\
        "and is %.3f in the form of float(3 decimal places) while"\
        " %.5f in the form of float(5 decimal places)."% (
        int(rawNum), 
        float(rawNum),
        float(rawNum))
    

    从运行脚本的命令行中获取参数[9]

    from sys import argv
    

    文件操作[10] [11] [12]

    打开文件[10] [12]

    键入下述命令,使 Py 脚本打开从命令行参数中获取文件名的文件

    from sys import argv
    
    script, srcName = argv
    
    src = open(srcName, '[mode name]') 
    
    # 使用 'r'/'w'/'r+'/'a' 来替换 '[mode name]'
    # 'r':读
    # 'w':写,若在写文件前已有同名文件,则直接覆盖
    # 'a' :修改,直接向文件尾部添加内容 
    # 'r+':读+修改(文件读写指针相互独立,即读指针默认从头开始,写指针默认指向文件尾)
    # 例如,假设该脚本名为 openfile.py,与脚本放在同一目录下有一个文件名为 test.txt
    # 执行 openfile.py test.txt 到上一句结束后
    # 脚本打开 text.txt 并准备对其进行操作
    # 此后变量 src 即指代该文件
    # 可用该变量对该文件进行读写操作
    

    其他常用读写命令[11] [12]

    • 读文件(直到文件尾):read,例如
      # 将 src 指向文件的所有内容以字符串形式赋予变量 srcContent。例如,为 src 开了 'r'/'r+'
      srcContent = src.read()
      
    • 读取一行:readline,例如
      # 从目前读指针在文件中所处位置开始读取一行
      # 以字符串形式赋予变量 srcContent
      srcContent = src.read()
      
    • 写入:write,例如
      # 例如 something 中已经保存了想要写入文件当前写指针指向位置的内容。例如,为 src 开了 'w'/'r+'
      # 下述命令将从目前写指针在文件中所处位置开始,往文件中写入 something 中保存的内容
      somehting = "I want to test the code."
      src.write(something)
      
    • 关闭文件:close,例如
      src.close()
      # 这条命令运行后,在重新指定前,src 不再指向之前指定的文件了,例如 test.txt
      

    与目录有关的文件操作[^14]

    首先导入模块os

    import os
    

    下面记录几个常用函数的操作:

    列出目录文件列表

    函数 os.listdir(<path>)

    【输入】字符串 <path>

    注意,该函数的输入必须是字符串,因此不能输入/Users/username/Desktop,而要输入"/Users/username/Desktop"来替换<path>

    【输出】1 个 list,其中的元素与<path>下的文件名一一对应

    【注意】函数不接受包含...形式的路径(例如./Desktop是不合法的输入,必须给出绝对路径)

    csv输出

    模板代码:

    import csv
    
    self.log_fields = ['key1', 'key2', 'key3']
    self.log_file = open(self.log_filename, 'wb')
    self.log_writer = csv.DictWriter(self.log_file, fieldnames=self.log_fields)
    self.log_writer.writeheader()
    
    self.log_writer.writerow({
        'key1':value1,
        'key2':value2,
        'key3':value3
    })
    
    self.log_file.close()
    

    定义函数[8] [13]

    以下代码定义 1 个函数,输出 3 行 Hello, world. 字符串:

    def my_first_fun():      #检查(1)有无括弧;(2)有无冒号
        print "Hello, world."
    
    def my_second_fun(arg1):
        print "%s" % arg1 # 这里如果用 r,将输出 'Hello, world.',即输出字符串带单引号。参数 %r 常用于调试,查看原始数据
    
    def my_third_fun(arg):
        print arg
    
    sentence00 = 'Hello, world.'
    sentence01 = """Hello, world."""
    
    my_first_fun();
    my_second_fun(sentence00)
    my_third_fun(sentence01)
    # 注意,在 Py 中,即便不加'\n',1 个 print 也会默认输出 1 行
    

    进制转换

    可以用 bin()/oct()/hex() 将目标数字转换为对应的二进制/八进制/十六进制数字

    一些常用库的简介

    • random:随机数

    参考资料


    1. How to Install Python 2.7.10 on Ubuntu & LinuxMint

    2. Difference in details between “make install” and “make altinstall”

    3. 鸟哥的 Linux 私房菜(基础学习篇)

    4. Exercise 1: A Good First Program

    5. Exercise 8: Printing, Printing

    6. Exercise 19: Functions and Variables

    7. Wrap long lines in Python

    8. Exercise 6: Strings and Text

    9. Exercise 13: Parameters, Unpacking, Variables

    10. Exercise 15: Reading Files

    11. Exercise 16: Reading and Writing Files

    12. 7.2. Reading and Writing Files

    13. Exercise 18: Names, Variables, Code, Functions

    相关文章

      网友评论

          本文标题:【编程语言】Python2 笔记

          本文链接:https://www.haomeiwen.com/subject/rqgblttx.html