pycharm常用快捷键

  • 移动到本行开头:home
  • 移动到本行末尾:end
  • 注释代码:ctrl + /
  • 复制行:ctrl + d
  • 删除行:shift + delete
  • 选择列:shift + alt + mouse left
  • 移动行:ctrl + shift + ↑↓
  • 代码格式化:ctrl + alt + l

基础知识

注释

给人看的,通常是对代码的描述信息。

  • 单行注释:以#号开头。
  • 多行注释:三引号开头,三引号结尾。

函数

表示一个功能,函数定义者是提供功能的人,函数调用者是使用功能的人

  • print(string) 作用:将括号中的内容显示在控制台中
print("你好")
print("世界")
  • 变量 = input("需要显示的内容") 作用:将用户输入的内容赋值给变量
name = input("请输入姓名:")
age = input("请输入年龄:")
print(name + "的年龄是:" + age + ".")

变量

  • 定义:关联一个对象的标识符。 -命名:必须是字母或下划线开头,后跟字母、数字、下划线。不能使用关键字(蓝色),否则发生语法错误SyntaxError
  • 建议命名:字母小写,多个单词以下划线隔开。
  • 赋值:创建一个变量或改变一个变量关联的数据。
"""
语法
变量名 = 数据
变量名1 = 变量名2 = 数据
变量名1, 变量名2 = 数据1, 数据2
"""
# 创建变量
name01 = "孙悟空"
name02 = "唐僧"
name03 = name01 + name02
# 修改变量
name01 = "悟空"
print(name03)
# 变量赋值变量
name04 = name01
print(name04)

变量内存图

变量内存图1.jpg

内存地址变化

str1 = 1
str2 = str1
#当str2变量以变量方式赋值,str2变量会直接指向str1变量的内存地址
print(id(str1))
print(id(str2))
str1 = 2
#当str1变量重新赋值,会开辟新的内存地址来存储,但是str2变量指向的内存不变,这就与php中地址引用有所不同
print(id(str1))
print(id(str2))
print(str1)
print(str2)

"""
10914496
10914496
10914528
10914496
2
1
"""

删除语句

用于删除变量,同时解除与对象的关联。如果引用计数为0可能则释放对象。 自动化内存管理的引用计数:每个对象记录被变量绑定(引用)的数量,当为0时被销毁。

name01 = "悟空"
name02 = name01
del name01, name02

核心类型

在python中变量没有类型,但关联的对象有类型

整形int

表示整数,包含正数、负数、0

  • 十进制:每位用十种状态计数,逢十进一,写法是0~9。
num01 = 10
  • 二进制:每位用二种状态计数,逢二进一,写法是0b开头,后跟0或者1。
num02 = 0b10
  • 八进制:每位用八种状态计数,逢八进一,写法是0o开头,后跟0~7。
num03 = 0o10
  • 十六进制:每位用十六种状态计数,逢十六进一,写法是0x开头,后跟0~9,A~F,a~f
num04 = 0x10

浮点型float

表示小数,包含正数、负数,0.0。

#字面值:
#小数:1.0 2.5
#科学计数法:
#e/E (正负号) 指数

1.23e-2 #(等同于0.0123)
1.23456e5 # (等同于123456.0)

# 小数
num01 = 1.23
# 科学计数法
num02 = 1e-5
print(0.00001)

字符串str

用来记录文本信息(文字信息)。

  • 字面值:双引号

布尔bool

用来表示真和假的类型

  • 只有两个值:
  • True 表示真(条件满足或成立),本质是1
  • False 表示假(条件不满足或不成立),本质是0
result = input("请输入您的职业:") == "老师"
print(result) # 输入老师,结果True;输入其他,结果False

运算

类型转换

  • 转换为整型: int(数据)
  • 转换为浮点型:float(数据)
  • 转换为字符串:str(数据)
  • 转换为布尔:bool(数据)

结果为False:bool(0) bool(0.0) bool(None)

  • 混合类型自动升级

1 + 2.14 返回的结果是 3.14 1 + 3.0 返回结果是: 4.0

# str -> int
data01 = int("3")
# int -> str
data02 = str(5)
# str -> float
data03 = float("1.2")
# float -> str
data04 = str(1.2)
# int -> float
data05 = float(250)
# float -> int
data06 = int(1.9)
print(data06) # 1 向下取整(截断删除)
# 注意:字符串转换为其他类型时,
# 必须是目标类型的字符串表达形式
# print(int("10.5")) # 报错
# print(float("abc"))# 报错

运算符

优先级高到低

  • 算数运算符
  • 比较运算符
  • 增强运算符
  • 身份运算符
  • 逻辑运算符

算术运算符

  • + : 加法
  • - : 减法
  • * : 乘法
  • / : 除法:结果为浮点数
  • // : 整除:除的结果去掉小数部分
  • % : 求余
  • ** : 幂运算

优先级从高到低

  1. ()
  2. **
  3. *,/,%,//
  4. +,-

增强运算符

  • y += x 相当于 y = y + x
  • y -= x 相当于 y = y - x
  • y *= x 相当于 y = y * x
  • y /= x 相当于 y = y / x
  • y //= x 相当于 y = y // x
  • y %= x 相当于 y = y % x
  • y **= x 相当于 y = y ** x
data01 = 10
# data01 + 5
# print(data01) # 10
data01 += 5 # data01 = data01 + 5
print(data01) # 15

比较运算符

  • < : 小于
  • <= : 小于等于
  • > : 大于
  • >= : 大于等于
  • == : 等于
  • != : 不等于
  • 比较运算的数学表示方式:0 <= x <= 100

逻辑运算符

  • and : 与 表示并且的关系,一假俱假。
  • or : 或 表示或者的关系,一真俱真。
  • not : 非 表示取反。

短路运算,一但结果确定,后面的语句将不再执行

身份运算符

is用于判断两个对象是否是同一个对象,是时返回True,否则返回False,is not的作用与is相反

  • x is y
  • x is not y