01-python基础
计算机基本概念与程序设计语言分类
冯.诺依曼结构
计算机由五大部件组成:存储器、控制器、运算器、输入设备、输出设备。
计算机内部统一采用二进制形式保存数据和指令。
存储程序思想:程序由指令组成并和数据一起存放在存储器中, 机器按程序指定的逻辑顺序, 把指令从存储器中读出来并逐条执行, 从而自动完成程序描述的处理工作。
程序语言分类
- 机器语言:二进制代码,计算机能够直接识别的语言。
- 汇编语言:在机器语言的基础之上增加一些助记符的编程语言。
- 高级语言:更加接近自然语言的编程语言。
高级编程语言分类
- 编译型语言:将高级语言转换成目标代码即二进制程序后才可以执行。
- 解释型语言:源代码逐条转换成目标代码并逐条执行,程序运行时需要源代码和解释器。
基本输入输出
print("hello,world")
print(123,456)
print(1+2)
执行结果:
hello,world
123 456
3
需要输出空格时,使用逗号分开。
print("please a name")
name = input()
print(name)
执行结果:
please a name
tom
tom
标识符和保留字
标识符
- 第一个字符必须是字母表中字母或下划线_ 。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
python保留字
保留字即关键字,不能把用作任何标识符。
python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
import keyword
print(keyword.kwlist)
执行结果:
['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']
注释
单行注释
使用#
# 这是一个单行注释
多行注释
- 使用多个#
- 使用'''
- 使用"""
# 这是多行注释1-1
# 这是多行注释1-2
'''
多行注释2-1
多行注释2-2
'''
"""
多行注释3-1
多行注释3-2
"""
行与缩进
缩进
- 使用缩进来表示代码块,不需要使用大括号 {} 。
- 同一个代码块的语句必须包含相同的缩进空格数。
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运行错误
多行语句
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠()来实现多行语句:
total = item_one + \
item_two + \
item_three
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠(),例如:
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
空行
- 空行与代码缩进不同,空行并不是Python语法的一部分,书写时不插入空行,Python解释器运行也不会出错
- 空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构,推荐:
- 函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。
- 类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
同一行显示多条语句
python可以在同一行中使用多条语句,语句之间使用分号(;)分隔:
import sys; x = 'runoob'; sys.stdout.write(x + '\n')
多个语句构成代码组
缩进相同的一组语句构成一个代码块,我们称之代码组。
像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。
if expression :
suite
elif expression :
suite
else :
suite
import
在 python 用 import 或者 from...import 来导入相应的模块:
- 将整个模块(somemodule)导入,格式为:
import somemodule
- 从某个模块中导入某个函数,格式为:
from somemodule import somefunction
- 从某个模块中导入多个函数,格式为:
from somemodule import firstfunc, secondfunc, thirdfunc
- 将某个模块中的全部函数导入,格式为:
from somemodule import *
dir() 函数与help() 函数
dir()
- dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表
- 带参数时,返回参数的属性、方法列表
- 如果参数包含方法__dir__(),该方法将被调用,如果参数不包含__dir__(),该方法将最大限度地收集参数信息
语法
dir([object]) # object -- 对象、变量、类型。
示例
查看列表的方法:
dir([])
执行结果:
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
help()
help() 函数用于查看函数或模块用途的详细说明。
语法
help([object]) # object -- 对象、变量、类型。
示例
help('sys') # 查看 sys 模块的帮助
help(a.append) # 显示list的append方法的帮助
PEP 8
PEP 8 是python的编码规范,具体内容参考官网