变量

标识符
  • 标识符是指Python语言中允许作为变量名或其他对象名称的有效符号
  • 变量名可以包括字母,下划线,数字
  • 首字符必须是字母或下划线
  • 字母可以是大写或小写,但大小写是不同的:PI和pi是不同的标识符
PI = 3.14159
pi = 'one word'
print(PI)
print(pi)
  • 全大写的变量名我们一般认为是一个符号常量
  • 我们通常避免下划线开头的变量名,因为下划线是内建标识符使用的符号,一般将下划线开头的变量名当作是私有的

常用的标识符两种命名方式

  • 驼峰式:第一个单词小写第二个单词大写
stuName
  • 下划线式:
stu_name
3.14159
one word
# variable
p = 3.14159
myString = 'is a mathematic circular constant'
print(p,myString)
3.14159 is a mathematic circular constant
关键字
  • 关键字是Python语言的关键组成部分,不可随便作为其他对象的标识符
>>> help('keywords')

Here is a list of the Python keywords.  Enter any keyword to get more help.

False               class               from                or
None                continue            global              pass
True                def                 if                  raise
and                 del                 import              return
as                  elif                in                  try
assert              else                is                  while
async               except              lambda              with
await               finally             nonlocal            yield
break               for                 not

表达式

  • 用运算符连接各种类型数据的式子就是表达式,在Python中给变量赋值不需要说明数据类型
  • 运算符有优先级顺序
  • 表达式必须有运算结果
PI = 3.14159
r = 2
c_circ = 2*PI*r
print('the circle\'s circum is',c_circ)
算术运算符
  • 乘方:**
x = 2**3
print(x)
  • 正负号: + -
  • 乘除:* /
  • 整除: //(向下取整,负数时我们常用int(a/2)来表示整除
x = 4//3
print(x)
>>> -5 // 2
-3
>>> int(-5/2)
-2
  • 取余:%
  • 加减:+ -
位运算符
  • 取反:~:5的原码是00000101取反得到:11111010,观察符号是负数,因为负数以补码存储的,所以问题转化为:某个人x的补码是11111010在取反得到00000101再加1就是00000110就是-6
y = ~5
print(y)
-6
  • 与:&
  • 或:|
  • 异或:^
  • 左移:<<
  • 右移:>>
比较运算符
• 小于:<
• 大于:>
• 小于等于:<=
• 大于等于:>=
• 等于: ==
• 不等于:!=
逻辑运算符
• 非:not
• 与:and
• 或:or
赋值语句
  • 不需要添加数据类型,通过引用内存单元赋值
  • 相同的若干个小整数默认范围是[-5,256]和部分仅包含数字,字母和下划线的字面常量字符串会被分配同一内存空间
  • 在同一个语句块当中相同的不可变对象不另外再分配空间
  • 支持链式赋值
x = y = 3.5
print(x,y)
  • 支持多重赋值
x = 1
y = 2
print(x,y)
x,y = y,x
print(x,y)
x,y = 3.1415,3
print(x,y)
  • 分配空间
>>> x = 3.5
>>> y = x
>>> y is x
True
>>> z = 3.5
>>> z is x
False
>>> id(x)
55229168
>>> id(z)
61002208
>>> id(y)
55229168
>>> m = 3
>>> n = 3
>>> m is n
True
>>> m = 256
>>> n = 256
>>> m is n
True
>>> m = 257
>>> n = 257
>>> m is n
False
字符串
  • 在python中创建一个字符串,要在字符串的两边加上引号,可以是单引号或者双引号,也可以是三引号(三个单引号组成)
>>> '''啦啦啦,
lalala'''
'啦啦啦,\nlalala'
  • 字符串中出现了单引号或双引号要用转义字符
print('I\'m shuaige!')
  print("I\'m shuaige!")
  • 原始字符串的使用,只需要在字符串前边加一个英文字母r即可
x = r'I come from China!'
print(x)
I come from China!
  • 长字符串使用“”“内容”“”或‘’‘内容’‘’
print('''有人说,
林深时见鹿,海蓝时见鲸,梦醒时见你;
可林深时雾起,海蓝时浪涌,梦醒时夜续,
不见鹿,不见鲸,亦不见你;
但又终究
你唤我梦醒,鹿踏雾而来,鲸随浪而涌,
便可见鹿,见鲸,亦见你。''')
有人说,
林深时见鹿,海蓝时见鲸,梦醒时见你;
可林深时雾起,海蓝时浪涌,梦醒时夜续,
不见鹿,不见鲸,亦不见你;
但又终究
你唤我梦醒,鹿踏雾而来,鲸随浪而涌,
便可见鹿,见鲸,亦见你。
元组
  • 逗号在Python中创建一种特殊的数据结构称为元组用圆括号括起来

数据类型

  • 整型(int):长度不受限制的整数
  • 浮点型(float):有小数点的实数,科学计数法
>>> 9.8e3
9800.0
>>> x = 2.1223123
>>> type(x)
<class 'float'>
  • 布尔类型:True(1)和False(0),空的列表,空的元组都是False
  • 复数型:可以分离实数部分和虚数部分,复数.real,复数.imag,复数的共轭:复数.conjugate()
x = 2.4 + 5.6j
print(x.real)
print(x.imag)
print(x.conjugate())
>>> type(2.5+10j)
<class 'complex'>
>>> type(3j)
<class 'complex'>
  • 字符串:单引号、双引号、三引号内的都是字符串,不可变类型
myString = 'hello world!'
print(myString[1])
myString1 = 'hello,'
myString2 = 'python!'
print(myString1 + myString2)
  • 列表:用方括号[ ] 界别,可变类型
  • 元组:与列表相似用小括号()界别,不可变类型
  • 字典:映射类型,用大括号{}界别,类似于哈希表的键值对
d = {'sine':'sin','consine':'cos','PI':3.14159}
print(d['sine'])
  • type()可用来判断类型
>>> type(3.1415)
<class 'float'>
>>> type(2+6j)
<class 'complex'>