Python 基础(一):入门必备知识
1 标识符
标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。
以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx
,表示不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import *
导入;双下划线开头的标识符,如:__xx
,表示私有成员;双下划线开头和结尾的标识符,如:__xx__
,表示 Python 中内置标识,如:__init__()
表示类的构造函数。
2 关键字
and |
exec |
not |
assert |
finally |
or |
---|---|---|---|---|---|
break |
for |
pass |
class |
from |
|
continue |
global |
raise |
def |
if |
return |
del |
import |
try |
elif |
in |
while |
else |
is |
with |
except |
lambda |
yield |
上面表中是 Python 中的关键字(保留字),我们在自定义标识符时不能使用关键字。
3 引号
Python 可以使用引号('
)、双引号("
)、三引号('''
或 """
)来表示字符串,引号的开始与结束须类型相同,三引号可以由多行组成。如下所示:
id = '001'
name = "张三"
skill = '''
唱歌
跳舞'''
skill = """
唱歌
跳舞"""
4 编码
Python2 中默认编码为 ASCII
,假如内容为汉字,不指定编码便不能正确的输出及读取,比如我们想要指定编码为 UTF-8
,Python 中通过在开头加入 # -*- coding: UTF-8 -*-
进行指定。
Python3 中默认编码为 UTF-8
,因此在使用 Python3 时,我们通常不需指定编码。
5 输入输出
Python 输出使用 print(),内容加在括号中即可。如下所示:
print('Hello Python')
Python 提供了一个 input(),可以让用户输入字符串,并存放到一个变量里。如下所示:
name = input()
print('Hi',name)
6 缩进
Python 不使用 {}
来控制类、函数、逻辑判断等,而是使用缩进,缩进的空格可变。如下所示:
if True:
print(True)
else:
print(False)
7 多行
Python 中一般以新行作为语句的结束标识,可以使用 将一行语句分为多行显示。如下所示:
a = 128
b = 1024
c = 512
d = a +
b -
c
如果包含在 []
、{}
、()
括号中,则不需要使用 。如下所示:
arr = {
a,
b,
c
}
8 注释
Python 中单行注释使用 #
,多行注释使用三个单引号('''
)或三个双引号("""
)。如下所示:
# 我是单行注释
'''
我是多行注释
我是多行注释
'''
"""
我是多行注释
我是多行注释
"""
9 数据类型
- 整数:可以为任意大小、包含负数
- 浮点数:就是小数
-
字符串:以单引号
'
、双引号"
、三引号'''
或"""
括起来的文本 -
布尔:只有
True
、False
两种值 -
空值:用
None
表示 - 变量:是可变的
- 常量:不可变
10 运算符
10.1 常用运算符
运算符 |
描述 |
示例 |
---|---|---|
+ |
相加 |
a + b |
- |
相减 |
a - b |
* |
相乘 |
a * b |
/ |
相除 |
a / b |
% |
取模 |
a % b |
** |
幂 |
a**b 表示 a 的 b 次幂 |
// |
取整除 |
9 // 4 结果为 2 |
== |
是否相等 |
a == b |
!= |
是否不等于 |
a != b |
> |
是否大于 |
a > b |
>= |
是否大于等于 |
a >= b |
<= |
是否小于等于 |
a <= b |
= |
简单的赋值运算符 |
a = b + c |
+= |
加法赋值运算符 |
a += b 等效于 a = a + b |
-= |
减法赋值运算符 |
a -= b 等效于 a = a - b |
*= |
乘法赋值运算符 |
a *= b 等效于 a = a * b |
/= |
除法赋值运算符 |
a /= b 等效于 a = a / b |
%= |
取模赋值运算符 |
a %= b 等效于 a = a % b |
**= |
幂赋值运算符 |
a **= b 等效于 a = a ** b |
//= |
取整除赋值运算符 |
a //= b 等效于 a = a // b |
& |
与 |
a & b |
| |
或 |
a | b |
^ |
异或 |
a ^ b |
~ |
取反 |
~a |
<< |
左移动 |
a << 3 |
>> |
右移动 |
a >> 3 |
and |
布尔类型与 |
a and b |
or |
布尔类型或 |
a or b |
not |
布尔类型非 |
not a |
is |
判断两个标识符是否引用同一个对象 |
a is b |
is not |
判断两个标识符是否引用不同对象 |
a is not b |
10.2 运算符优先级
运算符 |
描述(由上至下对应优先级由高到低) |
---|---|
** |
幂运算 |
~ + - |
取反、正号、负号 |
* / % // |
乘、除、取模、取整除 |
+ - |
加法、减法 |
>> << |
右移、左移 |
& |
与 |
^ | |
异或、或 |
<= < > >= |
比较运算符 |
== != |
是否等于、是否不等于 |
= %= /= //= -= += *= **= |
赋值运算符 |
is is not |
身份运算符 |
in not in |
成员运算符 |
not and or |
逻辑运算符 |
<END>
- 奇怪的登录问题及解决 (75天)
- Optional乱用Empty之No value present
- Java中ArrayList remove会遇到的坑
- Dagger2 入门解析
- Git 工作流的正确打开方式
- 如何从两个List中筛选出相同的值
- 【Windows编程】系列第八篇:创建通用对话框
- 使用dropwizard(3)-加入DI-dagger2
- 巧用shell生成数据库检查脚本 (74天)
- 【专业技术】OPENGL与EGL
- 在dropwizard中使用feign,使用hystrix
- 用python抓取淘宝评论
- 使用Dropwizard(2)-配置分类ConfiguredBundle
- Upgrade with the Gradle Wrapper, gradlew升级
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Java并发编程(07):Fork/Join框架机制详解
- PostgreSQL Pgbouncer 到底怎么使用,疗效有多大
- 微信练手小程序源码 - 日历(含各种功能组件)
- Redis 5.0.8安装
- Redis 主从搭建
- Redis 5.0.8 主从+哨兵的搭建
- ammo.js-bullet物理引擎碰撞检测
- TKE上动态部署jenkins slaves
- CVE-2017-0261及利用样本分析
- 流水的NLP铁打的NER:命名实体识别实践与探索
- Spring Boot入门系列(十七)Mybatis创建自定义mapper 实现多表关联查询!
- 让你笑的七个linux命令
- GPU并行计算之向量和
- ShardingJdbc分库分表实战案例解析(下)
- 分布式链路追踪Skywalking Skywalking 存储客户端设计