• python程序设计——基本语言特性


    参考《Python程序设计(第2版)》 清华大学出版社 董付国 

    ##### 除特殊说明外,以下代码示例,均为python 3.6版本 #####

    一、Python语言特性

    1.python是一种强类型编程语言,就是说,python解释器会根据赋值或运算自动推断变量类型

    2.python是一种动态类型语言,就是说,变量的类型可以随时变化

    可以使用 type() 查看变量类型,isinstance() 可以判断对象是否为指定类型的实例

    #python 3.x
    1
    >>x=3 2 >>print(type(3)) 3 <class 'int'> 4 5 >>isinstance(3,int) 6 True 7 8 >>isinstance('hello world',str) 9 True

    3.python使用基于值的内存管理方式

    如果为不同变量赋值为相同值,这个值在内存中只有一份,多个变量指向同一块内存地址

     #pyhton 3.x
    1
    print("id(x):",id(x)) 2 y=x 3 print("id(y):",id(y)) 4 x+=6 5 print("id(x+6):",id(x)) 6 7 out: 8 id(x): 1876094032 9 id(y): 1876094032 10 id(x+6): 1876094224

    4.python具有自动内存管理功能,会跟踪所有值,自动删除不再有变量指向的值

    显式使用 del 命令删除不需要的值,是一个优秀程序员的基本素养之一

    二、Python内置对象

    简单罗列一下,后续文章会陆续介绍

    类型 示例
    数字 1234, 3.14, 3+4j
    字符串 'swf' 'hello' "have fun"
    列表 [2,2,3] ['a', 'v', ['c', 'd']]
    字典 {1:'red', 2:'yellow', 3:'blue'}
    元组 (2, -4, 5)
    文件 f=open('data.txt','r')
    集合 set('abc') {'a', 'c', 'e'}
    布尔型 True False
    空类型 None
    编程单元类型

    函数 def

    类 class

    三、Python运算符

    运算符与C语言类似,简单说几种比较特别的:

    x or y  逻辑或  x and y 逻辑与  not x   逻辑非

    x//y 求整商  x/y 真除法  

    1 #python 3.x
    2 >>3.0/5
    3 0.6
    4 
    5 >>3.0//5
    6 0.0

    x**y 幂运算  

    x in y  ; x not in y  成员测试

    x is y ; x is not y 对象实体同一性测试(地址) 

    @ 矩阵乘法

    四、Python关键字

    1 >>import keyword
    2 >>print(keyword.kwlist)
    3 ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 
    'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if',
    'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

    五、删除操作del

    使用 del 显示删除对象并解除对象与值之间的指向关系

    若该值有其他对象指向,则只删除对象,不删除该值;否则删除该值

    del 可以删除列表或其他可变序列中的指定元素,无法删除元组或字符串,因为这两者属于不可变序列

    六、基本输入输出

    使用 input() 接收用户输入

    在Python 3.x中,input() 函数的返回结果为字符串,需要将其转化为相应的类型再处理

    1 >>x = input("input:")
    2 input:3
    3 
    4 >>print(type(x))
    5 str

    输出重定向

    1 >>fp = open(r'D:file.txt','a+')
    2 >>print('hello world', file=fp)
    3 >>fp.close()

    七、模块导入与使用

    1. import 模块名 [as 别名]

    2. from 模块名 import 对象名 [as 别名]

    仅导入明确指定的对象,可以减少查询次数,提供访问速度

    3. from 模块名 import *

    一次导入所有对象,一旦多个模块中有同名的对象,会导致混乱

    模块导入的顺序

    1. 导入python标准库模块,如 os  sys  re

    2. 导入第三方扩展库,如 numpy  scipy

    3. 导入自己定义和开发的本地模块

    八、python文件名

    常见扩展名

    py 源文件,由解释器负责解释

    pyw 源文件,用于图像界面程序

    pyc 字节码文件,用于隐藏python源代码,提高运行速度

    模块第一次导入时被编译为字节码的形式,在以后再次导入时优先使用.pyc文件

    pyd 由其他语言编译的二进制文件,常用于实现某些软件工具的python编程接口插件或python动态链接库

  • 相关阅读:
    字符型数据(char)与无符号字符型数据的区别(unsigned char)
    Delphi 动态数组、静态数组、TBytes 的区别
    设置dbgrideh的footer
    Electron13之remote模块使用
    源码学习攻略
    使用git子模块实现代码复用
    关于 iframe 在隐藏后显示时,不能保持原有滚动条位置的处理
    字符串分割(String.Split)时连同分隔符一起返回
    008-Linux服务器如何查看自己的公网出口IP地址
    010-核心技术-netty-编码解码机制、protobuf、Netty入站出站机制、netty与log结合
  • 原文地址:https://www.cnblogs.com/feinaio2017/p/8710810.html
Copyright © 2020-2023  润新知