- 前言:在这篇博客当中,我们将步入Python知识的殿堂,Python以其简单、易学、开发效率高在近些年的发展可谓是迅猛,在许多领域都可以见到它的场景,例如:人工智能/机器学习、大数据开发、后端开发等都会用到。
1.认识Python
1.1 什么是编程语言
Python和我们的C语言一样也是一门编程语言,那何为编程语言呢?
- 所谓编程语言就是我们和计算机进行交流的一种语言工具,计算机是听不懂我们的语言,它只能识别0和1的二进制代码,但是只有编程语言计算机还是执行不了我们想要的功能,需要一个翻译工具(解释器或编译器)将代码翻译成二进制,那么此时我们就可以与计算机进行通畅的交流了。在C语言中我们所使用的VS编译器也是这样的道理。
1.2 第一个Python程序
使用Python语言,向世界说你好。
print("hello world!")
1.3 编写Python所使用的工具
使用Python编程语言需要Python解释器来使我们的程序变成计算机所能读懂的二进制代码,从而和计算机进行交流,但仅仅一个Python解释器进行编写Python代码还是比较不方便,我们还需要一个PyCharm这样一个集成开发环境,这样我们编写程序会很方便。以下是PyCharm的一些快捷键:
ctrl+ alt + s:打开软件设置 shift +f6:重命名文件
ctrl+d:复制当前行代码 ctrl+a:全选
shift +alt+上下:将当前行代码进行上下移动 ctrl+c\v\x:复制、粘贴、剪切
crtl+ shift +f10:运行当前代码文件 ctrl+f:搜索
2.Python基础语法
2.1 字面量
字面量:在代码中,被写下来的的固定的值称之为字面量
2.2 注释
注释:在程序代码中对程序代码进行解释说明的文字。
作用:注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性。
注释的分类:
- 单行注释:以#开头,#右边 的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用,注意:(1)与C语言代码的区别C语言代码的注释是以//为开头(2)#号和注释内容一般建议以一个空格隔开。
- 多行注释:以 一对三个双引号引起来 ("""注释内容""")来解释说明代码
2.3 变量
变量:在程序运行时,能储存计算结果或能表示值的抽象概念 。
变量的定义格式:变量名 =变量值
变量的特征:变量的值可以改变
2.4 数据类型
常用的数据类型:
type()语句:我们可以通过type()语句来得到数据的类型,type(被查看类型的数据)
使用方式有以下几种:
- 在print语句中,直接输出类型信息
- 用变量存储type()的结果 (返回值)
- 查看变量中存储的数据类型信息
print(type(666))
int_type = type(666)
print(int_type)
num = 666
print(type(num))
这里需要注意在python语言中变量有类型吗?
- 答案是没有的,这里需要与C语言相区分开来,如:我们可能会说:字符串变量,但要知道不是变量是字符串,而是它存储了字符串。
2.5 数据类型转换
为什么要进行类型转换呢? 事实上我们在很多场合当中都会运用到类型转换,例如:
- 从文件中读取的数字,默认是字符串,我们需要转换成数字类型
- input()语句,默认结果是字符串,若需要数字也需要转换
- 将数字转换成字符串用以写出到外部系统
如何进行数据类型转换呢? 下面介绍一些常见的数据类型转换的语句:
这里需要注意几个问题:
- 任何类型都可以转换成字符串吗?这个答案是肯定的,所有字符带上""就是字符串
- 字符串可以随意转换成数字吗?答案是否定的,想要将字符串转换成数字,必须要求字符串内的内容都是数字。
- 浮点数转整数会丢失什么?会丢失精度,丢掉小数部分
2.6 标识符
标识符:是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名 。
在python中标识符是不可以随便命名的,它有以下规则:
1)内容限定。 2)大小写敏感。 3)不可使用关键字。
- 内容限定:英文、中文、数字、下划线 (_) ,其余任何内容都不被允许。注意:数字不可以开头
- 大小写敏感:假如命名变量:Book,book,它们是不同的变量。
- 不可使用关键字:这点和C语言类似,每个关键字都有它特殊的功能,不能被占用。
变量的标识符命名规范:1)见名知意 、2)下划线命名法 、3)英文字母全小写
2.7 运算符
算术运算符:
赋值运算符:
复合赋值运算符:
2.8 字符串扩展
字符串的三种定义方式
- 1)单引号定义法:name = '张三'
- 2)双引号定义法:name = "张三"
- 3)三引号定义法:name = """张三"""
注意:如果我想要定义的字符串本身是包含单引号、双引号自身呢?
答案:
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转移字符 (\)来将引号解除效用,变成普通字符串
字符串拼接
使用+就可以实现这个功能。注意:简单的拼接只能是字符串与字符串进行拼接。
这里就会遇到这样的问题,我要是让字符串和数字进行拼接到一块怎么办?此时就会用到接下来的知识点叫做字符串格式化。
字符串格式化
字符串格式化的语法:
name = "张三"
age = 15
message = "%s年龄是: %d" % (name, age)
print(age)
其中:%s:1)% 表示:我要占位。 2)s 表示:将变量变成字符串放入占位的地方
所以,综合起来的意思就是:我先占个位置,等一会有个变量过来,我把它变成字符串放到占位的位置。%d也是同样的道理。注意:多个变量占位变量要用括号括起来并按照占位的顺序填入。
其中格式符号与C语言是相类似的:
字符串格式化的精度控制
我们可以使用辅助符号"m.n"来控制数据的宽度和精度:
- m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
- .n,控制小数点精度,要求是数字,会进行小数的四舍五入
看如下例子:
- %5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度
- %5.2f:表示将宽度控制为5,将小数点精度设置为2,小数点和小数部分也算入宽度计算。如,对11.345设置了%7.2f后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2位精度后,四舍五入为 .35
- %.2f: 表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35
下面讲述一个快速格式化的方法:
通过语法:f“内容{变量}”的格式来快速格式化。看如下例子:
name = "张三"
age = 15
print(f"我是{name}, 我的年龄是:{age}")
表达式的格式化
直接上代码:
print("张三的年龄是:%d" % (4*4))
print("张三的年龄是:(4*4)" )
2.9 数据输入
input语句:它的功能相当于C语言当中的scanf语句,是从键盘当中读取输入,不过它的使用比较简单,直接input()就可以。需要注意以下几点:
- 在input的括号内可以直接填写提示内容,这些内容会被打印下来。
- 无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型,因此如果我们想要得到整型数据,就需要进行数据类型转换。
name = input("请输入你的名字:")
age = int(input("请输入你的年龄:"))
print("我是%s, 我的年龄是:%d" %(name, age))
print(f"我是{name}, 我的年龄是:{age}")