Python学习01
文章目录
01-字面量
**字面量:**字面量是编程语言中表示固定值的直接写法,可以称之为字面量。
在起初的时候:我们只需要学习下面三种最简单的字面量类型
类型 | 程序写法 | 说明 |
---|---|---|
整数 | 666,520,-1314 | 和现实中的写法一致 |
浮点数(小数) | 13.14,-5.20 | 和现实中的写法一致 |
字符串(文本) | "你好,python" | 用双引号引起来的都是(单引号也算) |
代码示例
python
666
13.14
'你好,Python'
"你好,Python"
# 使用print函数 输出上面的内容
print(666)
print(13.14)
print('你好,Python')
print("你好,python")
02-注释
注释:在程序代码中对程序代码进行解释说明的文字。
作用:注释是不会被编辑器执行的。知识对代码进行解释说明,能够大大增强程序代码的可读性。
在很多语言中,注释都会有两种,除了使用的符号不同外。其意义都是一模一样的哦!
注释的分类
1.单行注释
- 单行注释: # 以 # 开头的,所有在# 右边的文字都是注释的内容,并不会被执行,(起辅助说明作用) 。
- 建议: # 和 注释内容之间使用一个空格隔开(规范而非标准) 官方和大厂企业都是这样使用的。
python
# 下面是一个数字字面量
666
# 下面是一个浮点数字面量
13.14
# 下面是二个字符串字面量
'你好,Python'
"你好,Python"
# 使用print函数 输出上面的字面量
print(666)
print(13.14)
print('你好,Python')
print("你好,python")
2.多行注释
- 多行注释:"以 一对三引号 " 引起来的所有解释说明内容。
- **一般用于:**对文件进行说明使用。
python
"""
本文件代码演示了:
* 几种字面量的写法
* 并且通过 print 语句输出了所展示的字面量
"""
print("----------------------------------------")
# 下面是一个数字字面量
666
# 下面是一个浮点数字面量
13.14
# 下面是二个字符串字面量
'你好,Python'
"你好,Python"
# 使用print函数 输出上面的字面量
print(666)
print(13.14)
print('你好,Python')
print("你好,python")
03-变量
变量:在程序运行时,能够存储计算结果或能表达值的抽象概念。
可以理解为就是用来记录数据用的容器(像个盒子一样)
python
"""
变量的语法格式:
变量名称 = 变量值
"""
1.简单的变量使用
python
"""
简单的 Python中变量的使用:
"""
# 定义一个变量,用来存放手机电量
variable = 100
# 通过 print 语句,输出存放手机电量的变量
print("手机电量为:",variable) # 100
# 手机使用了一个小时,电量消耗50% (计算手机电量并输出)
variable = variable - 50
print("一小时后电量为:",variable) # 50
print("--------------------------------------")
"""
变量的练习
"""
# 当前钱包余额 100 元 购买雪糕10元 和 牛奶 20元。
# 求余额,并使用 print 输出
money = 100
money = money - 10 - 20
print("消费后的钱包余额为:", money "元") # 70元
04-数据类型
学习字面量的时候,我们就接触了三种数据类型
类型 | 描述 | 说明 |
---|---|---|
string | 字符串类型 | 用引号引起来的都是 |
int | 整型(有符号) | 数字类型、存放整数(正负都行) |
float | 浮点型(有符号) | 数字类型、存放小数(正负都可以) |
1.type()语句
我们可以使用type()语句来查看我们想要知道的数据类型。
语法:
type(被查看类型的数据)
python
"""
type()语句的使用
type()有返回结果的,原地返回结果或赋值给变量
"""
# 1. 直接查看输出类型信息
print(type("我是字符串类型"))
print(type(520))
print(type(13.14))
# 2. 使用变量存储type()语句的类型结果
string_type = type("我是字符串类型")
int_type = type(520)
float_type = type(13.14)
print(string_type)
print(int_type)
print(float_type)
# 3. 使用type() 语句,查看变量中的数据类型信息
variable = '我是变量'
result_type = type(variable)
print(result_type)
tyep()语句:查看的是数据的类型,哪怕你在变量里面。
在Python中:变量是没有类型的 ,但是变量里面的数据是有类型的。
05-数据类型转换
为什么需要对数据的类型进行转换呢?
- 默认的是字符串,我们处理的是数字。那么不匹配,对程序代码会造成印象。
常见的转换语句
语句(函数) | 说明 |
---|---|
int (x) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
str(x) | 将对象x转换为字符串 |
- 这三个语句都会再处理数据后原地返回结果,我们可以将结果赋值给变量、处理 或 使用print语句输出
代码演示
python
"""
数据类型的转换:
* 任何类型都可以转字符串
* 不是任何字符串都可以转对象
"""
# 将数字类型转换为字符类型
num_str = str(11)
print(type(num_str),num_str) # <class 'str'> 11
float_str = str(13.14)
print(type(float_str),float_str) # <class 'str'> 13.14
# 将字符串转换成数字型
str_num = int("520")
print(type(str_num),str_num) # <class 'int'> 520
# 将字符串转换成浮点型
srt_float = float("520")
print(type(srt_float),srt_float) # <class 'float'> 520.0
# 将整数转浮点型
num_float = float(520)
print(type(num_float),num_float) # <class 'float'> 520.0
# 将浮点数转整数类型 (丢失精度) 不四舍五入
float_num = int(13.14)
print(type(float_num),float_num) # <class 'int'> 13
总结:
- 任何类型都可以转字符串
- 字符串必须有数字才可以转成数字型
- 浮点数转数字会丢失精度
06-标识符
标识符命名规则
1.内容限定:
-
标识符命名中,只允许出现:
- 英文
- 中文
- 数字
- 下划线(_)
-
注意点:
- 不推荐使用中文(规范非标准)
- 数字不可以开头
2.大小写敏感:
- 同样的名字,但是有到小写不同依旧是可以执行的
python
# 大小写敏感
Name = "Name"
print(Name) # Name
name = "name"
print(name) # name
3.不能使用关键字
- Python中内内定的单词称之为"关键字"。有特定的用途,我们不能使用作为标识符。
例如:False True as and None def if else for while等
当然:如果大小写不一致就不算占用关键字。
代码示例:
python
"""
Python标识符的代码演示
"""
# 规则1: 内容限定《中文、英文、数字、下划线、不能使用数字开头》
# 错误示范: 1_name = "刘不住"
# 错误示范: name_! = "刘不住"
name = "刘不住"
name_1 = "刘不住"
_name1 = "刘不住"
# 规则2:大小写敏感
Liubuzhu = "刘不住"
liubuzhu = "大小写敏感"
print(Liubuzhu) # 刘不住
print(liubuzhu) # 大小写敏感
# 规则3:不可使用关键字
# 错误的示范→ 使用了关键字: class = 1
# 错误的示范→ 使用了关键字: def = 1
Class = 1
Def = 11
print(Class) # 1
print(Def) # 11
建议:
- 做到命名见名知意(哪怕拼音也行)
- 多个单词使用下划线分隔(函数等建议大小驼峰命名)
- 变量命名规范:建议规范使用全部小写
不遵守队则:会出现问题
不遵守规范:会不太高级
07-运算符
Python中的运算符:
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加 A + B 结果为:100 |
- | 减 | 得到负数或 两个数相减:A - B 结果为:-100 |
* | 乘 | 两个对象相乘 A * B 结果为:100 |
/ | 除 | A / B 结果为:100 |
// | 取整除 | 9 // 2 结果为:4, 9.0 // 4.0 结果为:4.0 |
% | 取余 | 返回除法的余数 A % B 结果为:100 |
** | 指数 | A ** B 为2的3次方:结果为: 8 |
代码示例
python
"""
python 中的运算符的代码演示
"""
# 算数运算符
print("1 + 1 = ", 1 + 1) # 1 + 1 = 2
print("2 - 1 = ", 2 - 1) # 2 - 1 = 1
print("3 * 3 = ", 3 * 3) # 3 * 3 = 9
print("4 / 2 = ", 4 / 2) # 4 / 2 = 2.0
print("5 // 2 = ", 5 // 2) # 5// 2 = 2
print("5 % 2 = ", 5 % 2) # 5 % 2 = 1
print("2 ** 3 = ", 2 ** 3) # 2 ** 3 = 8
赋值运算符:
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | 把 = 右边的结果 赋给 左边的变量:如num = 1 + 2 * 3,结果为:7 |
复合运算符
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | A += B 等效于:A = A + B |
-= | 减法赋值运算符 | A -= B 等效于:A= A - B |
* = | 乘法赋值运算符 | A *= B 等效于:A= A * B |
/= | 除法赋值运算符 | A /= B 等效于:A= A / B |
//= | 取整赋值运算符 | A //= B 等效于:A= A // B |
%= | 取模赋值运算符 | A %= B 等效于:A= A % B |
**= | 幂赋值运算符 | A **= B 等效于:A= A `` B |
代码示例
python
# 赋值运算符
num = 1 + 2 + 3
# 复合运算符
num = 1
num += 1 # num += num + 1
print("num += 1 →",num) # num += 1 → 2
num -= 1
print("num -= 1 → ",num) # num -= 1 → 1
num *= 5
print("num *= 5 → ",num) # num *= 5 → 5
num /= 2
print("num /= 2 → ",num) # num /= 2 → 2.5
num //= 1
print("num //= 1 → ",num) # num //= 1 → 2.0
num %= 0.5
print("num %= 0.5 → ",num) # num %= 0.5 → 0.0
num **= 10
print("num **= 10 → ",num) # num **= 10 → 0.0
08-字符串的三种定义方式
-
字符串在Python中有多种定义形式
- 单引号定义法:
name = '刘不住'
- 双引号引号定义法:
name = "刘不住"
- 三引号定义法:
name = """刘不住"""
- 单引号定义法:
注意:三引号定义法:和多行注释一样,使用变量接收他,就是字符串。不使用变量接收他,就视为注释。
代码示例
python
"""
演示字符串的三种定义方式"
* 单引号
* 双引号
* 三引号
"""
# 单引号定义法
name = '刘不住'
print(type(name)) # <class 'str'>
# 双引号定义法
name = "刘不住"
print(type(name)) # <class 'str'>
# 三引号定义法
name = """
刘不住
"""
print(type(name)) # <class 'str'>
字符串引号嵌套问题
python
# 在字符串内包含双引号
name = '"刘不住"' # "刘不住"
print(name)
# 在字符串内包含单引号
name = "'刘不住'"
print(name) # '刘不住'
# 使用转义字符 \ 解除引号的使用
name = "\"刘不住\""
print(name) # "刘不住"
name = '\'刘不住\''
print(name) # '刘不住'
09-字符串的拼接
一般的我们拼接会和变量一起使用 通过 + 号进行拼接
python
"""
字符串的拼接
* 通过 + 号完成
"""
# 字符串字面量之间的拼接
print("刘不住" + "真的刘不住") # 刘不住真的刘不住
# 字符串字面量和变量的拼接
name = "真的刘不住"
num = 995
num = str(num) # 记得类型转换:数字转字符在拼接
print("刘不住" + name + "怎么办" + num) # 刘不住真的刘不住怎么办995
10-字符串格式化(占位符)
为什么需要字符串格式化:
- 变量过多,拼接起来很麻烦
- 字符串无法和数值后其他类型直接拼接。
解决方案:
%s占位符
- % 表示:我要占位
- S 表示: 将变量变成字符串放入占位的地方
综合起来就是:我先占个位置,等会有一个变量过来,我将他变成字符串然后放到这里。
注意点:
- 多个变量占位:变量要用括号括起来,使用逗号隔开
- 同时占位顺序和变量顺序一一对应
格式化符号
Python中常见的
格式符号 | 转化 |
---|---|
%s | 将内容转换成字符串,放入占位位置 |
%d | 将内容转换成整数,放入占位位置 |
%f | 将内容转换成浮点型,放入占位位置 |
用法和上面 %s一样
综合使用示例代码
python
"""
字符串格式化
* 占位符,完成拼接
* %s 占位
* % 我需要占位
* s 格式化为字符串放入占位的地方
"""
# 通过占位符完成字符串拼接
name = "刘不住"
message = "%s怎么办:" % name
print(message) # 刘不住怎么办:
# 通过占位符,完成数字和字符串的拼接
class_num = 5
C_name = "爱你"
I_love = "%s%s" % (class_num,C_name)
print(I_love) # 5爱你
print("-------------------------------")
name = "张三"
age = 18
height = 183.8
message = "姓名:%s,年龄:%d, 身高:%f" % (name,age,height)
print(message) # 姓名:张三,年龄:18, 身高:183.800000
11-字符串格式化(精度控制)
对于精度控制:我们可以使用辅助符号 " m .n " 来控制数据的宽度和高度。
- m: 控制宽度,要求是数字 (当设置的宽度小于数字自身的个数,不生效)
- .n: 控制小数点精度,要求是数字,会进行小数的四舍五入
示例:
- %5d: 5 === m 表示控制整数的宽度为 5位,如数字24,就会变成 → 空格 空格 空格24.
- %5.2f: .2 === n 表示将宽度控制为5,将小数精度设置为2位。
- 注意:小数点和小数都会算入宽度。如 12.678设置 %7.2f后,结果为:空格空格12.68。小数部分限制2位精度,四舍五入后为.68.
python
"""
字符串格式化:
* 精度控制
"""
num1 = 11
num2 = 12.678
print("数字11宽度限制6,结果是:%6d" % num1)
print("数字11宽度显示1,结果是:%1d" % num1)
print("数字12.678宽度限制7,小数精度2,结果是:%7.2f" % num2)
记住两句话
- m 宽度要求比数字宽度还小,不生效
- n小数精度会再限制宽度后,保留对应的小数个数,同时四舍五入。
12-字符串格式化-快速写法
我们上面对%占位符已经有一定的了解,使用起来还是比较方便的,还能进行精度的控制。
可是身为有不同其他语言的python以优雅为代名词,必然有更优雅的写法:
语法:
f"内容{变量} 来实现快速格式化"
python
"""
字符串格式化:
快速写法
f{变量}
"""
# 直接在花括号里面丢变量就可以了
name = "刘不住"
age = 18
print(f"我是:{name},年龄:{age}")
这种方式:
- 不受类型限制
- 不做精度控制
对精度没有要求的时候快速可以使用这种方法
13-对表达式进行格式化
表达式:具有明确执行结果的代码语句
例如: 1 + 1 就会产生计算结果,就属于表达式。
简单理解就是,以后我们需要对表达是格式化,可以不直接格式化变量,直接对表达式格式化就行了(因为可以直接对表达式返回的结果进行直接格式化)
python
"""
演示对表达式进行字符串格式化
"""
print("1 * 1 的结果是:%d" % (1 * 1))
print(f"1 * 2 的结果是:{ 1 * 2}")
print("字符串python中的类型名是:%s" % type("字符串"))
- 两种方式都是可以使用的。
python
"""
股票价格计算
* 股价增长 = 当前股价 * 增长系数**增长天数
"""
name = "传媒没"
stock_price = 19.99
stock_code = "002412"
stock_growth = 1.2
growth_days = 7
print(f"公司:{name}, 股票代码:{stock_code}, 当前股价:{stock_price}")
print("每日增长系数是:%.2f,经过 %d天增长后,股价达到了:%.2f" % (stock_growth,growth_days,(stock_price * stock_growth**growth_days)))
14-数据输入(input)
- 数据输出: print
- 数据输入: input
使用也是非常简单的:
- 使用 input()语句可以从键盘获取输入
- 使用一个变量接收(存储) input语句获取的键盘输入数据即可。
python
"""
演示python的输入语句input
* input 输入的内容都是字符串
* 使用的时候注意类型转换
"""
# input 使用方法
name = input("请告诉我你的名字")
print("原来你的名字叫:%s" % name)
# input 输入的类型查看
num = input("请告诉我你的年龄:")
# 不管你输入的是什么类型,通过input输入的都是字符串类型
num = int(num) # 类型转换
print("你的年龄类型是:",type(num))
注意点:input输入的内容类型为字符串。
python
"""
登录练习
* 声明两个变量
* 分别将两个需求的input用户输入的数据进行获取保存
* 使用字符串格式化处理后输出
"""
user_name = input("您好!请输入用户名:")
user_type = input("请输入您的等级:")
print(f"您好:{user_name},您是尊贵的:{user_type}用户,欢迎您登录!")