定义变量和使用

变量的定义

在程序中,有时我们需要对2个数据进行求和,那么该怎样做呢?大家类比一下现实生活中,比如去超市买东西,往往咱们需要一个菜篮子,用来进行存储物品,等到所有的物品都购买完成后,在收银台进行结账即可如果在程序中,需要把2个数据,或者多个数据进行求和的话,那么就需要把这些数据先存储起来,然后把它们累加起来即可

在python中,存储一个数据叫 ,需要一个叫做变量的东西,如下示例:

num1 = 100 # num1就是一个变量,就好比一个小菜篮子

num2 = 87 # num2 也是一个变量

result = num1 + num2 # 把num1和num2这两个 '菜篮子' 中的数据累加,然后放到result里面
  • 说明:
    • 所谓变量,可以理解为菜篮子,如果需要存储多个数据,最简单的方式是有多个变量,当然也可以使用一个
    • 程序就是用来处理数据的,而变量就是用来存储数据的
# Ctrl + enter可以在下方插入一个空行
# 变量:内存地址的别名,作用,用来存储数据的
# 在程序中想要存储数据,就需要使用变量
# 变量的定义:变量名 = 数据值 变量名要遵循标识符定义的规则
# 定义一个变量的name,变量name中存储的数据是'mylgcs'
name = 'mylgcs'
# 定义一个变量age,变量age中存储的时间值是 36
age = 36
# 使用变量中的值,直接使用变量即可
# 使用print函数打印输出name变量中存储的数据值
print(name)
print(age)

# 修改变量中的值 变量名 = 新的数据值
age = 37
print(age)

变量的类型

  • 生活中的例子

例子

  • 程序中
    • 为了更充分的利用内存空间以及更有效率的管理内存,变量是有不同的类型的,如图所示:

类型

  • 怎么知道一个变量的类型呢?
    • 在python中,只要定义了一个变量。而且它有数据,那么它的类型已经确定了,不需要咋们开发者去说明他的类型,系统会自动辨别
    • 可以使用type(变量的名字),来查看变量的类型
# 变量的数据类型,由变量中存储的数据解定的
# 可以使用type()函数得到变量的数据类型,想要进行输出,需要使用print函数

# int 整数
result = 10
print(type(result))  # <class 'int'>

# float 小数
result = 3.14 # 修改变量中存储的数据
print(type(result))  # <class 'float'>

# str 引号引起来的内容就是字符串, 单引号和双引号都可以
name = 'mylgcs'
print(type(name))  # <class 'str'>

# bool 布尔类型, 只有两个值 True, False
result = True
print(type(result))  # <class 'bool'>

标识符

什么是标识符

[!Note|style:flat|label:提示]

开发人员在程序中自定义的一些符号好名称

标识符是自己定义的,如变量名丶函数名等

标识符的规则

标识符由字母丶下划线和数字组成,并且不能以数字开头

python中的标识符是区分大小写的

命名规范

见名知意

[!Note|style:flat|label:提示]

起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可读性)比如:名字 就定义为 name,定义学生用 student

驼峰命名法

[!Note|style:flat|label:提示]

小驼峰式命名法 (lower camel case):第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog

大驼峰式命名法 (upper camel case):每一个单字的首字母都采用大写字母,例如:FirstName、LastName

还有一种命名法是用下划线“_”来连接所有的单词, 比如send_buf

关键字

什么是关键字

[!tip|style:flat|label:提示]

python一些具有特殊功能的标识符,这就是所谓的关键字

关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符

查看关键字

import keyword  # 导包,keyword是系统中已经定义好的内容,想要使用就需要导入
print(keyword.kwlist)

输入和输出

  1. python中的输出
# 打印提示
print('hello world')
print('萨瓦迪卡---泰语,你好的意思')
  1. 格式化输出
age = 36
print('我今年%d岁' % age)
age += 1
print('我今年%d岁' % age)
age += 1
print('我今年%d岁' % age)
  1. 在程序中 看到了 % 这样的操作符,就是python中格式化输出。
age = 18
name = 'xiaohua'
print('我的姓名是%s,年龄是%d' % (name, age))
  1. 常用的格式符号
格式符号 转换
%c 字符
%s 字符串
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母0x)
%X 十六进制整数(大写字母0X)
%f 浮点数
%e 科学计算法(小写'e')
%E 科学计算法(大写'E')
%g %f和%e的简写
%G %f和%E的简写
  1. %f 输出小数默认保留6位小数
height = 170.5
# %f 输出小数默认保留6位小数
print('我的身高是%f cm'% height)
# %.nf 输出小数默认保留6位小数
print('我的身高是%.2f cm'% height)
  1. 输出50%,
# 输出50%,使用格式化输出的时候,想要输出一个%,需要两个%
print('及格人数占比为%d%%' % 50)
  1. python3.6以后开始支持f-string,占位统一使用{}占位
name = 'xiaohua'
age = 18
height = 175.0
# python3.6以后开始支持f-string,占位统一使用{}占位,填充数据直接写在{}里面
print(f'我的名字是{name},年龄是{age}岁,身高是{height}cm')
  1. 转义字符
# 转义字符\n 将\和n组合在一块,作为一个字符使用,\n代表换行
# print()函数输出之后,默认会添加一个换行,如果不想换行可以去掉
print('hello', end='')
print('hello', end='-*-')
print('hello', end='')
print('world', end='')
print('good good study\nday day up')
  1. 输入

咱们在银行ATM机器前取钱时,肯定需要输入密码,对不?那么怎样才能让程序知道咱们刚刚输入的是什么呢??大家应该知道了,如果要完成ATM机取钱这件事情,需要先从键盘中输入一个数据,然后用一个变量来保存,是不是很好理解啊在Python中,获取键盘输入的数据的方法是采用 input 函数(至于什么是函数,咱们以后的章节中讲解),那么这个 input 怎么用呢?

示例:

password = input('请输入密码')
print('您刚刚输入的米啊是:%s' % password)

[!tip|style:flat|label:提示]

Input的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示

Input在从键盘获取了数据以后,会存放到等号右边的变量中

Input会把用户输入的任何值都作为字符串来对待

类型转换

从键盘上录入苹果的价格、重量,输出:苹果单价 9.00 元/斤,购买了 5.00斤,需要支付 45.00元.

# 1. 使用input函数获取苹果的价格
price = input('请输入苹果的价格')
# 2. 使用input函数获取购买的重量
weight = input('请输入重量')
# 3. 输出响应的结果
result = float(price) * float(weight)  # 类型转换
print(f'苹果单价为{price}元/斤,购买了{weight}斤,需支付{result}元')

类型转换,将原始数据转换为我们需要的数据类型,在这个过程中,不会改变原始的数据,会生成一个新的数据

  1. 转换为int类型 int(原始数据)
pi = 3.14
num = int(3.14)
print(type(pi))  # float
print(type(num))  # int
# 整数类型转字符串
my_str = '10'
num1 = int(my_str)
print(type(my_str))  # str
print(type(num1))  # int

# 转换为 float
num2 = 10
num3 = float(num2)

print(type(num2))  # int
print(type(num3))  # float
  1. 将数字类型字符串转换为 float
num = float('3.14')
num1 = float('10')
print(type(num))  # float
print(type(num1))  # float

# eval() 还原原来的数据类型,去掉字符串的引号
num2 = eval('100')
num3 = eval('3.14')
print(type(num2))  # int
print(type(num3))  # float

my_str = eval('hello')
print(my_str)  # 会报错,原因是去掉了引号 hello就是变量 我们没有定义这个变量

num4 = eval('num3')
print(num4, type(num4))  #  num3 是已经定义好了的变量,可以使用,不会报错
  1. 常用的数据类型转换
函数 说明
int(x[,base]) 将x转换为一个整数
float(x) 将x转换为一个浮点数
complex(real[,imag]) 创建一个复数,real为实部,imag为虚部
str(x) 将对象× 转换为字符串
repr(x) 将对象x 转换为表达式字符串
eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s) 将序列s转换为一个元组
list(s) 将序列s转换为一个列表
chr(x) 将一个整数转换为一个Unicode字符
ord(x) 将一个字符转换为它的ASCll整数值
hex(x) 将一个整数转换为一个十六进制字符串
oct(x) 将一个整数转换为一个八进制字符串
bin(x) 将一个整数转换为一个二进制字符串

运算符

python支持以下几种:

下面以a=10,b=20为例进行计算

运算符 描述 实例
+ 两个对象相加a+b 输出结果 30
- 得到负数或是一个数减去另一个数a-b输出结果 -10
* 两个数相乘或是返回一个被重复若干次的字符串a*b输出结果 200
/ b/a 输出结果2
// 取整除 返回商的整数部分 9//2 输出结果 4,9.0//2.0 输出结果 4.0
% 取余 返回除法的余数b%a 输出结果0
** 指数 a**b 为10的20次方,输出结果 100000000000000000000

[!warning|style:flat|label:提示]

混合运算时,优先级顺序为:** 高于 * / % // 高于 + -,为了避免歧义,建议使用()来处理运算符优先级,并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。

赋值运算符

运算符 描述 实例
= 赋值运算符 把=号右边的结果 赋给 左边的变量,如 num = 1+2 * 3 ,结果num的值为7

复合赋值运算符

运算符 描述 实例
+= 加法赋值运算符 c += a 等效于c = c + a
-= 减法赋值运算符 c -= a 等效于c = c - a
*= 乘法赋值运算符 c = a 等效 c = c a
/= 除法赋值运算符 c /= a 等效 c = c / a
%= 取模赋值运算符 c %= a 等效 c = c % a
**= 幂赋值运算符 c *= a 等效 c = c * a
//= 取整除赋值运算符 c //= a 等效 c = c // a

比较运算符

运算符 描述 示例
== 检查两个操作数的值是否相等,如果是则条件变为真 如a=3,b=3,则 (a== b) 为 True
!= 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 如a=1,b=3,则(a !=b) 为 True
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a > b) 为 True
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a < b) 为 False
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a >= b) 为 True
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a <= b) 为 True

逻辑运算符

运算符 逻辑表达式 描述 实例
and x and y 布尔"与":如果× 为 False, x and y返回 False,否则它返回y的值。 True and False,返回False
or x or y 布尔"或":如果× 是 True,它返回True,否则它返回y 的值 False or True,返回True
not not x 布尔"非":如果×为 True,返回False。如果x 为 False,它返回True not True 返回 False,not False 返回 True

results matching ""

    No results matching ""