字面量:在代码中,被写下来的的固定的值,称之为字面量
Python中常用的有6
种值(数据)的类型
字符串,又称文本,是由任意数量的字符如中文、英文、各类符号、数字等组成。所以叫做字符的串
如:
• “黑马程序员”
• “学Python来黑马”
• “!@#$%^&”
• “传智教育的股票代码是:003032”
Python中,字符串需要用双引号(")包围起来被引号包围起来的,都是字符串
注释:在程序代码中对程序代码进行解释说明的文字。
作用:注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性。
单行注释:以 #
开头,#右边
的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用。
多行注释: 通过一对三个引号来定义(“”“注释内容”“”),引号内部均是注释,可以换行
变量:在程序运行时,能储存计算结果或能表示值的抽象概念。
简单的说,变量就是在程序运行时,记录数据用的。
变量,从名字中可以看出,表示“量”是可变的。
所以,变量的特征就是,变量存储的数据,是可以发生改变的。
变量的目的是存储运行过程的数据
存储的目的是为了:重复使用
在学习字面量的时候,我们了解到:数据是有类型的。
目前在入门阶段,我们主要接触如下三类数据类型:
string、int、float这三个英文单词,就是类型的标准名称。
我们可以通过type()语句来得到数据的类型:
语法:
type(被查看类型的数据)
在print语句中,直接输出类型信息:
用变量存储type()的结果(返回值):
3. 查看变量中存储的数据类型
我们通过type(变量)可以输出类型,这是查看变量的类型还是数据的类型?
查看的是:变量存储的数据的类型。因为,变量无类型,但是它存储的数据有。
字符串有3种不同的定义方式:
双引号
"字符串"
单引号
'字符串'
三引号
"""字符串"""
三引号定义法,表示在一堆三个双引号的范围内,均是字符串,如下:
要注意的是,包含范围是:从三个引号开始,到下一个三个引号结束
数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字、数字转字符串等
那么,我们为什么要转换它们呢?
数据类型转换,将会是我们以后经常使用的功能。
如:
• 从文件中读取的数字,默认是字符串,我们需要转换成数字类型
• 后续学习的input()语句,默认结果是字符串,若需要数字也需要转换
• 将数字转换成字符串用以写出到外部系统
同前面学习的type()语句一样,这三个语句,都是带有结果的(返回值)
我们可以用print直接输出
或用变量存储结果值
类型转换不是万能的,毕竟强扭的瓜不会甜,我们需要注意:
在Python程序中,我们可以给很多东西起名字,比如:
这些名字,我们把它统一的称之为标识符,用来做内容的标识。
所以,标识符:
是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名。
Python中,标识符命名的规则主要有3类:
标识符命名中,只允许出现:
这四类元素。
其余任何内容都不被允许。
以定义变量为例:
Andy = “安迪1”
andy = “安迪2”
字母a的大写和小写,是完全能够区分的。
Python中有一系列单词,称之为关键字,关键字在Python中都有特定用途
我们不可以使用它们作为标识符。
学完了标识符(变量、类、方法)的命名规则后,我们在来学习标识符的命名规范。
不同的标识符,有不同的规范。
我们目前只接触到了:变量。所以,目前学习:变量的命名规范。
变量命名规范 - 见名知意
变量的命名要做到:
变量命名规范 - 下划线命名法
多个单词组合变量名,要使用下划线做分隔。
变量命名规范 - 英文字母全小写
命名变量中的英文字母,应全部小写。
思考:如果我想要定义的字符串本身,是包含:单引号、双引号自身呢?如何写?
如果我们有两个字符串(文本)字面量,可以将其拼接成一个字符串,通过+号即可完成,如:
print("学IT来黑马" + "月薪过万")
输出结果:
不过一般,单纯的2个字符串字面量进行拼接显得很呆,一般,字面量和变量或变量和变量之间会使用拼接,如:
其中的,%s
所以,综合起来的意思就是:我先占个位置,等一会有个变量过来,我把它变成字符串放到占位的位置
多个变量占位变量要用括号括起来并按照占位的顺序填入
Python中,其实支持非常多的数据类型占位,最常用的是如下三类
如下代码,完成字符串、整数、浮点数,三种不同类型变量的占位
字符串格式化 - 数字精度控制
我们可以使用辅助符号"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"内容{变量}"的格式来快速格式化
字符串格式化 - 表达式的格式化
刚刚的演示,都是基于变量的。
表达式:一条具有明确执行结果的代码语句,如:
1 + 1、5 * 2,就是表达式,因为有具体的结果,结果是一个数字
又或者,常见的变量定义:
name = “张三”
age = 11 + 11
等号右侧的都是表达式,因为它们有具体的结果,结果赋值给了等号左侧的变量。
在无需使用变量进行数据存储的时候,可以直接格式化表达式,简化代码
f"{表达式}"
“%s%d%f” % (表达式、表达式、表达式)
name = '传智播客'
stock_price = 19.99
stock_code = '003032'
stock_price_daily_growth_factor = 1.2
growth_days = 7n_stock_price=stock_price*stock_price_daily_growth_factor**growth_days
print(f"公司:{name},股票代码:{stock_code},当前股价:{stock_price}")
print("每日增长系数是:%.1f,经过%d天增长后,股价达到了:%.2f" % (stock_price_daily_growth_factor,growth_days,n_stock_price))
获取键盘输入 input语句(函数)
我们前面学习过print语句(函数),可以完成将内容(字面量、变量等)输出到屏幕上。
在Python中,与之对应的还有一个input语句,用来获取键盘输入。
数据输出:print
数据输入:input
使用上也非常简单:
在前面的代码中,输出”请告诉我你是谁?“的print语句其实是多余的
input()语句其实是可以在要求使用者输入内容前,输出提示内容,方式如下:
如图,在input的括号内直接填入提示内容即可。
无论键盘输入何种类型的数据,最终的结果都是:字符串类型的数据