python3程序开发指南——第1章 笔记


python文件的扩展名为.py ,但是python GUI程序的扩展名为.pyw

在python中,注释以#开始,作用范围为该行

IDLE提供了三个关键功能:输入python表达式与代码,并在python shell中直接查看结果;代码编辑器,提供了python特定的彩色语法高亮显示功能与对代码缩排的支持;调试器,可用于单步跟进代码,识别并纠正其中存在的bug。


python的8个关键要素:

#1:数据类型
    python所能表示的整数大小只受限于机器内存,而非固定数量的字节数。
    字符串可以使用双引号或单引号封装。
    python使用方括号([])来存取字符串等序列中的某一项,并且适用于任意数据类型比如下面的例子
        >>>"Hard Times"[5]
        'T'
    如果想要将一个数据项从某种类型转换为另一种类型,可以使用语法datatype(item)

#2:对象引用
    在python中,“=”的作用是将对象引用与内存中的某对象进行绑定。如果对象引用已经存在,就简单的进行重绑定,以便引用“=”操作符右面的对象;如果对象引用尚未存在,就由“=”操作符创建对象引用。
    对象引用的命名限制:不能与任何python关键字相同;以字符或下划线开头,其后跟随0个或多个非空格字符、下划线或数字。
    python标识符大小写敏感。

#3:组合数据类型
    元组与列表可以存储任意数量、任意类型的数据项。元组是固定的,列表是可变的。
    元组与列表存储的是对象引用,而非对象本身。
    对于元组、列表以及字符串等数据类型而言,长度的度量是有意义的。
    对元组与列表的操作可以看笔记本的“列表,元组,字典”笔记,里面有详细记录。

#4:逻辑操作符
    python提供了4中逻辑运算。
    身份操作符:is操作符能够判断左右两边的对象引用是否指向同一个对象。
    比较操作符:<,<=,==,!=,>=,>
    成员操作符:操作符in测试成员关系
    逻辑操作符:and、or、not

#5:控制流语句:
    在python中,一块代码,也就是说一条或多条语句组成的序列,成为suite。关键字pass,实际上是一条空语句,不进行任何操作,可以用在需要suite但又不需要进行处理的地方。
    if语句
    while语句
    for...in语句,语法格式如下:
for variable in iterable:
    suite
    异常也是一个对象,语法格式如下:
try:
    try_suite
except exception1 as variable1:
    exception_suite1
...
except exceptionN as variableN:
    exception_suiteN

#6:算术操作符
    有+、-、*、/、+=、*=
    注意除法/,结果产生是浮点数。如果要产生一个整数值,可以用int()进行转换,或者使用剥离操作符//
    增强型赋值操作符注意两点:1.int型是固定的,一旦赋值,不能改变,因此,对固定对象使用增强的赋值操作符时,实际上是创建一个对象来存储结果,之后目标对象引用重新绑定。 2. a operator= b 与 a = a operator b并不完全一致,前者只查询一次a的值。
     列表+=操作符 右边的操作数必须是一个iterable。(iterable包括列表,字符串,数组等)

#7:输入/输出
    input()
    print()

#8:函数的创建与调用
    语法格式:
def functionName(arguments):
    suite
    使用函数之前必须先定义
    python模块实际上就是包含Python代码的.py文件,比如自定义函数与类(自定义数据类型)的定义,有时候还包括变量等。

#bigdigit.py
调用一个内置的sys模块,这个sys模块是内嵌在python之中,sys模块包含了与python解释器和它的环境有关的函数。
sys.argv函数可以传入参数,sys.argv[0]代表当前的模块。
#test.py
import sys
print(sys.argv[0])
print(sys.argv[1])

>>>python test.py 123
test.py
123

generate_grid.py
str = input(argv) 注意:argv为提示信息,不是输入的数;str才是输入的数


总结:
    今天做了课后习题的第一题之后,发现python的for语句和c,java的for语句很不相同,相比之下,强大许多。for variable in iterable 结构,variable遍历iterable的值,不仅仅用于计数。

None
None是一个特殊的常量
None和False不同
None不是0
None不是空字符串
None和任何其他数据类型比较永远返回False
None有自己的数据类型NoneType
你可以将None复制给任何变量,但是你不能创建其他NoneType对象
>>> type(None)
<class 'NoneType'>
>>> None == 0
False
>>> None == ''
False
>>> None == None
True
>>> None == False
False

is 和 ==
is判断两个对象是否相等(id)
==判断两个值是否相等(value)














原文地址:https://www.cnblogs.com/sevenr/p/3899943.html