python 的优势
用途
基础:自动化运维、多媒体处理、自动化办公、人工智能引用、web开发、python爬虫
计算:数据分析、量化交易、数据产品
机器学习:数据挖掘、搜索算法、机器学习算法、推荐算法
深度学习:
python优点
对大数据分析、人工智能中重要的机器学习、深度学习提供大力支持
背后有庞大的代码库
胶水语言,能识别其他语言
作用
抢票、数据分析、开发网站、游戏
python基础
python注释
# 注释方法1
'''
注释方法2
'''
"""
注释方法3
"""
print函数
# 输出数字
print(100)
# 输出字符串
print("hello")
# 含有运算符的表达式
print(3-1)
# 将数据输出文件中. 注意:所制定的盘符必须存在;使用file=fp格式,否则数据无法输入
a = "hello"
fp = open('D:/test.txt', 'a+') # a+表示如果问件不存在则创建,存在则追加
print(a, file=fp)
fp.close()
# 不进行换行输出
print('H', 'e', 'l', 'l', 'o')
print('hello', end='') # end=''可使输出不换行,''中可以使任意字符
print('c')
转义字符
就是\+想实现的转义功能首字母
为什么需要转义字符
当字符串中包含\、'、"等有特殊用途的字符时,必须使用\对这些字符进行转义
反斜杠:\\
单引号:\'
双引号:\"
当字符串中包含换行、回车、水平制表符或退格等无法直接表示的特殊字符时,可以使用转义字符
换行:\n
回车:\r
水平制表符:\t
退格:\b
print("hello\na") #换行输出
print("hello\ta") # \t长度在1-4之间,每隔制表位占4个位置,当一个制表位占满时,\t才会占一整个制表位,否则就用原来剩余的制表位
print("hello\ra") # a覆盖掉原来的hello
print('hello\bworld') # \b是退一格,每个\b删除前面的一个字符
print('hello\\')
print('hello\'')
print('hello\"')
原字符
不希望字符串中的转义字符起作用,就使用原字符,在字符串之前加上 r 或 R
注意:原字符末尾不能是单个的\,否则会报错
print(r'hello\na')
print(R'hello\\')
二进制和字符编码
# 中文转十进制
print(ord('乘'))
# 二进制转中文
print(chr(0b100111001011000))
python标识符和保留字
保留字
某些单词被赋予特定含义,这些单词在起名时不能使用,可通过如下代码查看python保留字
import keyword
print(keyword.kwlist)
变量、函数、类、模块和其他对象的名字就是标识符
规则:
字母、数字、下划线
不能以数字开头
不能是保留字
严格区分大小写
python变量与数据类型
变量是存放数据值的容器
变量是由三部分组成
标识:对象所存储的内存地址,使用内置函数id(obj)来获取
类型:对象的数据类型,使用内置函数type(obj)来获取
值:对象存储的具体数据,使用print(obj)可以将值进行打印输出
Python 中的变量赋值不需要类型声明
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建
name = '张三' # name是变量名,=是赋值运算符,张三是值,将值赋值给变量
print(name)
多个变量赋值
a = b = c = name
d, e, f = {'ab', 'ac'}, ('a', 'b', 'c'), ['a', 'b'] # []是列表,{}是字典,()是元组
print(a, b, c, d, e, f)
多次赋值时,变量的值指向最新的赋值,先前赋的值就是内存垃圾
python中常用的数据类型
整数型 -> int
可以表示正数、负数、0
整数的不同进制的表示方法
十进制->默认的进制,无需特殊表示
二进制->以0b开头
八进制->以0o开头
十六进制->以0x开头
|
进制
|
基本数
|
连几进一
|
表示形式
|
|
十进制
|
0,1,2,3,4,5,6,7,8,9
|
10
|
11
|
|
二进制
|
0,1
|
2
|
0b11111111
|
|
八进制
|
0,1,2,3,4,5,6,7
|
8
|
0o1544
|
|
十六进制
|
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
|
16
|
0x11
|
# 整数可以表示为二进制、八进制、十进制、十六进制
print(1)
print(0b11111111) # 2进制,0b开头
print(0o1544) # 8进制,0o开头
print(0xFFFF) # 16进制,0x开头
浮点数 -> float
浮点数是有整数部分和小数部分组成
浮点数存储不精确性
使用浮点数进行计算时,可能会出现小数位数不确定的情况,因为计算机是使用二进制进行存储,存储浮点数时是不精确的,会存在一定误差
print(1.1+2.2) # 3.3000000000000003
print(1.1+2.1) # 3.2
解决方法
导入模块decimal
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2')) #3.3
布尔型 -> bool
用来表示真假的值
True表示为真,False表示假
布尔值可以转化为整数True为1,False为0
print(True+1) # 2
字符串 -> str
字符串又被称为不可变的字符序列
可以使用单引号、双引号、三引号来表示
单引号和双引号定义的字符串必须在一行
三引号定义的字符串可以分布在连续的多行
str1 = '字符串'
str2 = "字符串字符串"
str3 = '''字符串
a'''
print(str1, str2, str3)
数据类型转换
目的:将不同数据类型的数据拼接在一起
数据类型转换的函数
|
函数名
|
作用
|
注意事项
|
举例
|
|
str()
|
将其他数据类型转换成字符串
|
也可以用引号转化
|
str(123)、'123'
|
|
int()
|
将其他数据类型转换为整数
|
1.文字类和小数类字符串无法转换成整数
2.浮点数转化成整数:抹零取整
|
int('123')
int(9.9)
|
|
float()
|
将其他数据类型转换成浮点数
|
1.文字类无法转换成整数
2.整数转成浮点数,末位为.0
|
float(‘9.9’)
float(9)
|
name = '张三'
height = 175.5
a = True
print(name+‘身高’+str(height)) # 将int类型通过str()函数转换成str类型
print(str(name), str(height), str(True)) # 都能转成功
print(int(name), int(height), int(True)) # int(name)不成功
print(float(name), float(height), float(True)) # float(name)不成功