Python基础笔记(2):基础语法
标识符
Python中的标识符规则与大多数语言都类似:
- 第一个字符必须是字母表中字母或下划线 _ 。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
- 在Python3中非ASCII标识符也受允许,例如中文
与其他语言不同的是,Python中标识符前后的下划线是具有特殊含义的,起着Java等语言中public等关键词的作用:
-
单下划线开头 _var
说明是仅供内部使用的方法变量,举个例子
首先创建一个test.py模块,包含了一个带下划线和不带下划线的方法:
1
2
3
4
5
6
7def func():
print("hello world")
def _func():
print("NO Hello")接着我们去引用这个模块,并分别调用方法:
1
2
3from test import *
func()1
2
3from test import *
_func()这时候它告诉我们 _func 没有定义,它只能被模块内部使用。
简单输入输出
使用input()
与print()
实现在命令行窗口简单输入输出:
1 | str = input("请输入内容:") |
与其他语言不同的是,print()
默认是换行输出的,如果需要实现不换行,则需要额外多一个参数end=""
:
1 | print("Hello",end="") |
行与缩进
缩进
Python与其他语言相比最大的特色之一就是以缩进标识代码结构,而不使用大括号、分号等。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数:
1 | if True: |
以下代码最后一行语句缩进数的空格数不一致,会导致运行错误:
1 | if True: |
不要混用制表符Tab与空格,虽然他们有时候看起来是一样的,但是在Python看起来,他们是不一样的缩进,因此也会让程序无法正常运行。
Python也可也在同一行显示多段代码,使用分号;
即可达到该效果:
1 | import sys; x = 'runoob'; |
空行
函数之间或者类的方法之间用空格分割,表示为一段新的代码的开始,类与函数入口也用一行空格分割,以分辨开始。
空格作为分割虽然不是Python语法的一部分,即使不使用空格,解释器也不会出错,但是IDE会给出提示,而且这在划分两段不同功能或含义的方式,可以便于日后代码的维护或者重构。
一句话分多行
Python 通常是一行写完一条语句,但如果语句很长,我们可以在行末使用续行符(反斜杠\
)来实现多行语句
1 | total = item_one + \ |
在 []
, {}
, 或 ()
中的多行语句,不需要使用反斜杠 \
1 | total = ['item_one', 'item_two', 'item_three', |
引入模块和函数
在 Python 用 import
或者 from...import
来导入相应的模块
- 将整个模块导入,格式为:
import somemodule
- 从某个模块中导入某个函数,格式为:
from somemodule import somefunction
- 从某个模块中导入多个函数,格式为:
from somemodule import firstfunc, secondfunc, thirdfunc
- 将某个模块中的全部函数导入,格式为:
from somemodule import *
变量与赋值
python中,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。
单个变量赋值
1 | counter = 100 # 整型变量 |
多个变量赋值
1 | a, b, c = 1, 2, "HelloWorld" |
标准数据类型
Python3 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python3 的六个标准数据类型中,分为两种数据,一种为只能被整体重新赋值的“不可变数据”,另外一种是可以改变其中一部分的“可变数据”:
- 不可变数据(3 个): Number(数字)、String(字符串)、Tuple(元组)
- 可变数据(3 个): List(列表)、Dictionary(字典)、Set(集合)
判断变量的对象类型
使用 type()
来查询
1 | 20, 5.5, True, 4+3j a, b, c, d = |
使用 isinstance()
来判断
1 | 111 a = |
判断与循环
If
1 | if <condition_1>: |
For
1 | for <variable> in <sequence>: |
break
和 continue
在 for
中有效,else
为可选
While
1 | while <condition>: |
break
和continue
在 While
中有效,else
为可选