系列文章目录
python入门(一)——你好python
python入门(三)——python判断语句
python入门(四)——python循环语句
python入门(五)——python函数
python入门(六)——python数据容器
python入门(七)——python函数进阶
python基础语法
1 字面量
- 数字:整数、浮点数等
- 字符串:需要用双引号包围起来
- 列表
- 元组
- 集合
- 字典
2 注释
注释不会被执行,只是对程序代码进行解释说明
- 单行注释:#
- 多行注释:一对三引号
多行注释
"""
多行
注释
"""
3 变量
能储存计算结果或能表示值的抽象概念,用于计算数据,变量的值是可以改变的
格式:变量名称=变量的值
输出多个数据,直接用逗号隔开即可
格式:print(内容1, 内容2…, 内容N)
a = 1
print("格式:", a)
4 数据类型
变量无类型,变量存储的数据有类型,字符串变量表示变量存储了字符串,而不是表示变量就是字符串
查看数据类型
# 查看字面量的数据类型
print(type("被查看类型的数据"))
print(type(666))
print(type(66.6))
# 查看变量中存储的数据类型
a = 6
print(type(a))
# 使用变量存储type()语句结果
b = type(6)
print(b)
5 数据类型转换
常见的转换语句
# 转为整数
int(x)
# 转为浮点数
float(x)
# 转为字符串
str(x)
任何类型的数据加上双引号都会变成字符串,但是字符串转为数字要确保字符串的内容是数字
浮点数转整数会丢失精度,直接丢弃掉小数点后面的数字
6 标识符
- 变量的名字
- 方法的名字
- 类的名字
用户在编程时使用的一系列名字,用于给变量、类、方法等命名
标识符规则:
- 内容限定
- 大小写敏感
- 不可使用关键字
只允许出现:
- 英文
- 中文
- 数字
- 下划线(_)
不推荐使用中文,数字不可以开头
变量命名规范:
- 见明知意:明了简洁
- 下划线命名法:多个单词用下划线做分隔
- 英文字母全小写
7 运算符
- 加法 +
- 减法 -
- 乘法 *
- 除法 /
- 取整数 //
- 取余 %
- 指数 **
复合赋值运算符:
8 字符串
8.1 字符串三引号
三引号定义:name = “”“黑马程序员”“”
和多行注释的写法一样,同样支持换行操作
- 使用变量接受,就是字符串形式
- 不使用变量接受,就可以作为多行注释使用
字符串的引号嵌套:
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转义字符( \ ")来将引号解除效用,变成普通字符串
name = '"黑马程序员"'
print(name)
"黑马程序员"
name = "\"黑马程序员\""
print(name)
"黑马程序员"
8.2 字符串拼接
两个字符串用+拼接成一个字符串
print("啦啦啦" + "啦啦啦")
啦啦啦啦啦啦
一般是字面量和变量或变量和变量之间会使用拼接
name = "1"
print("2比" + name + "大")
2比1大
逗号拼接
print("2比", name, "大")
2比 1 大
注意:不可以跟非字符串类型拼接,只能字符串之间拼接
8.3 字符串格式化
8.3.1 方式一:%
want = "变瘦变美!"
I = "我想要 %s" % want
print(I)
我想要 变瘦变美!
I = "我想要%s" % want
print(I)
我想要变瘦变美!
%:占位
s:将变量变成字符串放入占位的地方
class_nmu = 57
avg_salary = 16781
message = "Python大数据学科,北京%s期,毕业平均工资:%s元" % (class_nmu, avg_salary)
print(message)
Python大数据学科,北京57期,毕业平均工资:16781元
注意:多个变量占位要用括号括起来,按照占位的顺序填入
直接用数字也是可以的
message_1 = "Python大数据学科第%s期" % 1
print(message_1)
Python大数据学科第1期
python中支持非常多的数据类型占位:
- %s:将内容转换成字符串,放入占位位置
- %d:将内容转换成整数,放入占位位置
- %f:将内容转换成浮点型,放入占位位置
name = "传智播客"
set_up_year = 2006
stock_price = 19.99
message = "我是:%s,我成立于%d,我的股价是:%f元" % (name, set_up_year, stock_price)
print(message)
我是:传智播客,我成立于2006,我的股价是:19.990000元
8.3.2 方式二:f"内容{变量}"
name = "传智播客"
set_up_year = 2006
stock_price = 19.99
print(f"我是{name},我成立于{set_up_year},我的股价是:{stock_price}")
我是传智播客,我成立于2006,我的股价是:19.99
# 不限数据类型,原样输出,不做精度控制
8.4 格式化的精度控制
"m.n"控制数据的宽度和精度:
- m控制宽度,要求是数字,设置的宽度小于数字自身不生效
- n控制小数点精度,要求是数字,会进行四舍五入
%5d:宽度5位的数字,例如11,变成[空格][空格][空格]11
%5.2f:宽度控制为5,小数点精度为2
11.345设置%7.2f后变成,[空格][空格]11.35,设置%.2f表示不限制宽度,只设置小数点精度为2,结果为11.35
num = 11.345
print("数字宽度为7,精度限制为2,结果为:%7.2f" % num)
数字宽度为7,精度限制为2,结果为: 11.35
print("数字宽度不受限制,精度限制为2,结果为:%.2f" % num)
数字宽度不受限制,精度限制为2,结果为:11.35
8.5 表达式的格式化
表达式:一条具有明确执行结果的代码语句,name = “张三”,等号右侧是表达式
无需使用变量进行数据存储时,可以直接格式化表达式,简化代码
print("1*1的数据结果是%d" % (1*1))
1*1的数据结果是1
print(f"1*1的数据结果是{1*1}")
1*1的数据结果是1
print("字符串的数据类型是%s" % type("字符串"))
字符串的数据类型是<class 'str'>
小练习
name = "传智播客"
stock_price = 19.99
stock_code = "003032"
stock_price_daily_growth_factor = 1.2
growth_days = 7
print(f"公司:{name}, 股票代码:{stock_code}, 当前股价:{stock_price}")
print("每日增长系数是:%.1f,经过7天的增长后,股价达到了:%.2f" % (stock_price_daily_growth_factor, (stock_price * stock_price_daily_growth_factor**growth_days)))
9 数据输入input
使用input()可以获取键盘输入的数据
name = input()
海绵宝宝
print(f"我是{name}")
我是海绵宝宝
input(提示信息) 可以在输入内容之前,输出提示内容
name = input("请告诉我你是谁?")
请告诉我你是谁?>? 海绵宝宝
print(f"我是{name}")
我是海绵宝宝
input语句不管输入的数据是什么类型,默认最后输出都是字符串类型数据
code = input()
123
print(f"code数据类型{type(code)}")
code数据类型<class 'str'>
code = int(input())
124
print(f"code数据类型{type(code)}")
code数据类型<class 'int'>
小练习
user_name = input()
user_type = input()
print(f"您好:{user_name},您是尊贵的:{user_type}比奇堡用户,欢迎您的光临。")