二、变量和简单类型

1. 变量

无论什么编程语言,都需要处理数据,处理数据就需要使用变量来保存数据。变量就像一个个小容器,用来“盛装”程序中的数据。

python有6种数据类型: 数字、字符串、列表、字典、元组、集合。数字类型又分为4小类: 整数、浮点数、复数、布尔类型。

image-20240501144815296

变量的定义方式:

变量名称 = 变量的值

(“=”是赋值符号,意思是把右边的值赋值给左边变量)

demo案例:

a=222
b=3.21
c="python你好!"
print(a)
print(b)
print(c)

执行结果:

image-20240501150631076

变量的数据是可以改变的,我们重新赋值就可以;

a = 222
b = 3.21
c = "python你好!"
print(a)
print(b)
print(c)
a = 45454
print(a)

格式化代码,快捷方式:ctrl+alt+L

2. 注释

用来对代码进行解释说明的文字,提高程序可读性。

  • 单行注释

使用井号开始,跟在“#”号后面知道这一行结束为止的代码都将被解释器忽略

# 定义变量a 赋值222
  • 多行注释

使用三个单引号或三个双引号将注释的内容括起来

# 定义变量a 赋值222
a = 222
b = 3.21
c = "python你好!"
"""    
输出 a b c    
- 重新给a赋值并输出
"""
print(a)
print(b)
print(c)
a = 45454
print(a)

3. 数据类型

6种数据类型。

type() 方法可以查看变量的类型。

案例代码:

"""
数据类型测试Demo
用type()方法可以查看变量的类型
Python是弱类型语言,变量的类型也是可以改变的。
"""
# 定义变量a 赋值222
a = 222
# 定义变量b 赋值3.14
b = 3.14
# 定义变量c 赋值"Python知识分享网"
c = "Python知识分享网"
# 打印变量类型
print("a=", a, type(a))
print("b=", b, type(b))
print("c=", c, type(c))
# 改变变量a的类型为字符串
a = "字符串类型"
print("a=", a, type(a))
# 变量可以是中文,但是不推荐
中国="fdfd"
print(中国)

执行结果:

image-20240501151438927

4. 变量的命名规则

python需要用标识符给变量命名。标识符必须以字母或者下划线“_”开头,后面可以跟任意数目的字母、数字和下划线。字母不限于26个英文字母,可以包含中文字符,但是不推荐。

Python关键字

image-20240501151954721

5. 运算符

赋值运算符

Python使用“=”作为赋值运算符。通常,使用赋值运算符将表达式的值赋给另一个变量。

算术运算符

Python支持所有的基本算术运算符,这些算术运算符用于执行基本的数学运算,如加、减、乘、除和求余等。下面是7个基本的算术运算符。

以下,假设变量a为10,变量b为21:

image-20240501152235580

案例代码:

# 定义变量a值为10
a = 10# 定义变量b值为21
b = 21
print("a+b=", a + b)
print("a-b=", a - b)
print("a*b=", a * b)
print("b/a=", b / a)
print("a**b=", a ** b)
print("b//a=", b // a)
print("b%a=", b % a)

执行结果:

image-20240501152336903

扩展后的赋值运算符

以下,假设变量a为10,变量c为21:

image-20240501152434151

案例代码:

a = 10
c = 21
c += a
print("c+=a c=", c)
c -= a
print("c-=a c=", c)
c *= a
print("c*=a c=", c)
c /= a
print("c/=a c=", c)

执行结果:

image-20240501152610389

6. 字符串

字符串定义和转义字符

字符串的意思就是“一串字符”,比如"python,牛逼"是一个字符串,"Python知识分享网"也是一个字符串。Python要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行——只要两边的引号能配对即可。

案例:

str1 = "python 牛逼"
str2 = 'I love you!'
print(str1)
print(str2)

执行结果:

image-20240502135338518

假如我们定义的字符串里面 含有单引号或者双引号,对于这种情况,我们有两种解决方案; (1)使用不同的引号将字符串括起来。 (2)通过使用 \ 对引号进行转义。

案例:

str3 = "I'm a coder"
print(str3)
str4 = '"孤注一掷",真好看!'
print(str4)
str5 = 'I\'m a coder'
print(str5)
str6 = "\"孤注一掷\",真好看!"
print(str6)

执行结果:

image-20240502135623479

长字符串的定义

前面介绍Python多行注释时提到使用三个引号(单引号、双引号都行)来包含多行注释内容,其实这是长字符串写法,只是由于在长字符串中可以放置任何内容,包括放置单引号、双引号都可以,如果所定义的长字符串没有赋值给任何变量,那么这个字符串就相当于被解释器忽略了,也就相当于注释掉了。

案例:

# 长字符串的定义
str8 = """
《春晓》
春眠不觉晓,
处处闻啼鸟。
夜来风雨声,
花落知多少。
"""
print(str8)

执行结果:

image-20240502140235339

字符串拼接

在Python中,使用加号 ( + )作为字符串的拼接运算符;

案例:

name = "张三"
site = "法外狂徒网站"
print("姓名:"+name+",网站:"+site)
数字和字符串不能直接拼接image-20240502141955350

有时候,我们需要将字符串与数值进行拼接,而 Python不允许直接拼接数值和字符串,程序必须先将数值转换成字符串。 为了将数值转换成字符串,可以使用str()或 repr()函数,如下代码:

name = "张三"
site = "法外狂徒网站"
tel = 6666666666
print("姓名:"+name+",网站:"+site+",电话:"+str(tel))
print("姓名:"+name+",网站:"+site+",电话:"+repr(tel))

使用input获取用户输入

input()函数用于向用户生成一条提示,然后获取用户输入的内容。由于input()函数总会将用户输入的内 容放入字符串中,因此用户可以输入任何内容,input()函数总是返回一个字符串。我们可以通过int() float()方法来转换类型。

案例:

name = input("请输入你的名字:")
print(name,type(name))

age = input("请输入你的年龄:")
print(age,type(age))
age = int(age)
print(age,type(age))

height = input("请输入您的身高(cm):")
height = float(height)
print(height, type(height))

执行结果:

image-20240502142947590

字符串格式化

字符串拼接,如果简单的2,3个字符串拼接那还算好,如果大于3个变量的拼接,就比较麻烦。还有一点,就是字符串无法和和其他类型直接拼接,需要进行类型转换,也麻烦。这时候,Python提供了“%”对各种类型的数据进行格式化输出。

案例:

name = "李白"
print("我的姓名是 %s" % name)

执行结果:

image-20240502143323105

这里 %s 是占位符,第二个 % 是分隔符,name就是变量了。这个很好理解。

案例:

name = "李白"
age = 18
print("我的姓名是%s,我今年%s岁了" % (name, age))

执行结果:

image-20240502143542826

这里多了一个int类型的age变量。我们输出的时候,用两个%s,中间依然用%间隔,第三块,括号里两个参数。注意参数的顺序不能乱。

除了%s,还有很多占位符,如下表。我们现在掌握最基础常用的%s,%d,%f,分别把参数或者表达式转换成字符串,整型,浮点型。

image-20240502143758787

看下面实例:

name = "郭靖"
age = 18
height = 181.2
print("我的姓名是 %s,我今年%s岁了" % (name, age))
print("我的姓名是 %s,我今年%d岁了" % (name, age))
print("我的姓名是 %s,我今年%d岁了,身高%f" % (name, age, height))

执行结果:

image-20240502144137385

打印身高的时候后面多了好多0,这里涉及到了精度问题。

  • m,控制宽度(包括小数点),注意,如果设置的宽度小于数字本身,则不生效。

  • n,控制小数点精度,注意,如果设置的宽度小于小数位数,则进行四舍五入。

我们先把前面的身高,加下小数精度 %.1f 这样输出结果就没有0了。 我们再看一下实例:

money1 = 99.99
money2 = 111.66
money3 = 10000
print("张三钱包余额:%10.2f元" % money1)
print("李四钱包余额:%10.1f元" % money2)
print("王五钱包余额:%10.2f元" % money3)

执行结果:

image-20240502145342117

其实我们发现上面的字符串格式化方式,虽然功能强大,但是写起来也不是太方便,这边提供一种更加快捷优雅的格式化方式。

语法是: f"内容{变量}内容";

这种方式缺点是无法进行精度控制,以及也不关心类型,原值输出。

案例:

# 更优雅的输出字符串,但是这种方式无法控制精度,也不考虑类型,原值输出
name = "小锋"
age = 18
height = 181.2
print(f"我的姓名是 {name},我今年{age}岁了,身高{height}")

执行结果:

image-20240502145808580

数字分隔符

为了提高数字的的可读性,Python 3.x 允许使用下划线_作为数字(包括整数和小数)的分隔符。通常每隔三个数字添加一个下划线,类似于英文数字中的逗号。下划线不会影响数字本身的值。

【实例】使用下划线书写数字:

click = 1_349_107
distance = 123_329_908_788
print("python教程阅读量:",click)
print("火星地球的距离:",distance)

执行结果:

image-20250320154113533

最近一次更新 3/20/2025, 7:54:12 AM