蟒蛇书入门学习笔记(2)Python中变量与数据类型(字符串、整型、浮点)

下面我们开始介绍变量、数据类型。这是迈向入门的关键一步。

1.变量

变量是计算机程序中用于存储数据的一种标识符。它可以被赋值和更改,以便在程序中进行存储和操作。变量可以是不同的数据类型,如整数、浮点数、字符串等。通过使用变量,程序可以动态地处理和操作数据,使代码具有更强的灵活性和可复用性。变量在程序中充当了一种标签,用于引用和操作存储的数据。

在上一篇的结尾中,我们尝试了基本程序“Hello World!”,现在,我们在程序中添加一个变量“message”:

message = "Hello World!"
print (message)

 我们来看一下最后的输出结果:

Hello World!

我们发现,这个输出与原本的输出一样。这说明,变量名“message”指向一个地址,这个地址存储了一个值“Hello World!”。但我们通过print调用变量message时,计算机访问地址,读取其中存储的值。

 我们可以预想到,用一个简洁明了的变量名指代一串值,能够大幅提高代码的流畅、通俗。

1.1怎样命名变量

在Python中使用变量,有以下规范要求:

  • 变量名只能包含字母、数字、下划线,不能包含空格。
  • 变量名可以字母或下划线打头,不能以数字打头。
  • 不要将Python关键字和函数名用作变量名(关键字和函数名详见链接)。

http://t.csdnimg.cn/TdurVicon-default.png?t=N7T8http://t.csdnimg.cn/TdurV还有一些为便于程序员之间的交流,人为做出的规范要求:

  • 变量名应既简短又具有描述性。
  • 慎用小写字母l和大写字母O,因为容易被人误认为是数字1和0。
  • 对于普通变量,尽量用全小写字母,因为一般用大写字母命名函数类。

1.2使用变量

在使用变量时,我们要注意一种常见的错误:名称错误。例如:

message = "Hello World!"
print (mesage)

Python无法成功运行程序,并提供了一个trace back: 

Traceback (most recent call last):
  File "hello_world.py", line 2, in <module>
    print (mesage)
           ^^^^^^
NameError: name 'mesage' is not defined. Did you mean: 'message'?

解释器指出此处出现了一个名称错误,并报告打印的变量mesage未定义。由于python发现mesage名称与已定义的message类似,它将询问是否是后者。

要注意,编程语言要求严格,因此一个字符的偏差也可能会影响整个程序的运行。

1.3同时给多个变量赋值

在Python中,可以通过逗号分隔的方式,同时给多个变量赋值。例如:

a,b,c="c","b","a"
print (a)
print (b)
print (c)

输出结果如下: 

c
b
a

2.数据类型

在C语言中,数据类型很重要,如int(整型)、float(浮点数)、char(字符)等等。虽然在Python中这种分类被弱化了,不过数据类型仍然起着不可忽视的作用。

2.1字符串

string(字符串)就是一系列字符。在Python中,用引号引起的都是字符串。其中的引号可以是单引号,也可以是双引号:

"This is a string"
'This is also a string'

当然,要注意,如果在字符串中要使用引号或撇号,那么需要灵活调整单双引号的使用,使得Python不会因此而弄混。例如:

# 在双引号中使用单引号或撇号
'print "Hello World!"'
# 在单引号中使用双引号
"print 'Hello World!'"
# 如果在双引号中使用双引号会导致出错
"print "Hello World!""

Python会把第一个引号到第二个相应引号之间的内容视为同一串字符,第三行中出现灰色字符,说明Python没有识别到"Hello World!"也是字符串的一部分。

2.1.1在字符串中使用变量

在字符串中,我们可以使用其他变量的值。例如,先用两个变量分别表示名和姓,再合并这两个变量值以显示姓名:

surname = '张'
name = '三'
print (surname)
print (name)
full_name = f"{surname}{name}"
print (full_name)

 在字符串中插入变量的值,可先在左引号前加上字母f,再将要引用的变量放在花括号内。Python在显示字符串时会自动提取变量的值。输出如下:

张
三
张三

2.1.2字符串相关方法

方法(method)是Python可对数据执行的操作。下面我们介绍一些字符串相关方法,利用这些方法可以快速将字符串处理成我们想要的样子,或是获得字符串的相关信息。

1.修改大小写

  • title():所有单词首字母大写
  • upper():全字母大写
  • lower():全字母小写

2.删除空格

  • rstrip():从右到左遍历原字符串,去除在字符串中的字符,直到遇到第一个不在字符串中的字符为止;若是括号中没有东西,则去除最右侧空格。
  • lstrip():从左到右遍历原字符串,去除在字符串中的字符,直到遇到第一个不在字符串中的字符为止;若是括号中没有东西,则去除最左侧空格。
  • strip():首尾遍历原字符串,去除在字符串中的字符,直到遇到第一个不在字符串中的字符为止;若是括号中没有东西,则去除两侧空格。
  • removeprefix():删除字符串前端的指定子字符串

4.检索信息

  • count():统计字符串里指定字符出现的次数(区分大小写)
  • find():查找某字符串里是否包含被查询的子字符串。

下面我们来演示一下这些方法的使用。

message = "hello python world!"
message = message.title ()
#对message使用title方法,并用获得的值赋给message变量
print (message)

message = message.upper ()
print (message)

message = message.lower ()
print (message)

message = message.lstrip ("hello ")
print (message)

print (message.rstrip("!"))
#也可以直接在print中使用方法

print (message.count ('o'))

输出如下:

Hello Python World!
HELLO PYTHON WORLD!
hello python world!
python world!
python world
2

除了以上介绍的内容,小伙伴们也可以参考这篇博客。http://t.csdnimg.cn/rlnHficon-default.png?t=N7T8http://t.csdnimg.cn/rlnHf

2.2整型

在C++中,使用整型变量,我们要先声明变量类型int;而在Python中,简化了这一步骤。我们可以直接将整数赋给变量,也可以用变量直接进行运算。

运算符号有加(+)、减(-)、乘(*)、除(/),优先顺序与四则运算相同;同时还可以用括号来调整先后顺序。要注意,程序中,{ }和[ ]有另外的作用,并不用来调整先后顺序。

a = 1
b = 2
print (a+b)
print (f"1+2={a+b}")
print (f"1-2={b-a}")
print (f"1*2={b*a}")
print (f"1/2={a/b}")

输出结果为:

3
1+2=3
1-2=1
1*2=2
1/2=0.5

不过,当我们使用除法时

print (f"1/2={a/b}“)

会出现以下结果:

2/1=2.0

这就意味着,整数除以整数, 会出现小数结果。这就要引入下一部分浮点数的介绍了。

2.3浮点数

大多数编程语言都将带小数点的数称为浮点数,意即小数点可以出现在数的任何位置上。所有编程语言对于浮点数的处理都需要下一番功夫,因为二进制存储十进制小数,并不能保证完全精确。但是有别于C++,Python相对更加便捷,它通常会以我们期望的方式处理浮点数,节省了我们的一部分精力。

#输入:
print (0.2+0.2)
print (0.2*2)

#输出:
0.4
0.4

 但是有些时候,结果包含的小数位数是不确定的:

#输入:
print (0.2+0.1)

#输出:
0.30000000000000004

 这样的情况说明,Python所输出的小数是有一定精度限制的。因此,我们需要学习处理多余小数位数的方法。

下面介绍使用round函数来保留一定精度的方法。

a = 12.345
print(round(a, 2))
#round(变量名,保留位数)

输出的将会是通过四舍五入保留两位小数的结果:

12.35

2.4常量

常量(constant)是在整个程序生命周期都不会改变的量。由于Python没有内置常量类型(例如C++中的define),因此它的使用与变量无异,通常是程序员为了程序表达的清晰明了而自己声明的量。

Python程序员通常会使用全大写字母来指出某个变量应视为常量,如:

MAX = 1000000
  • 51
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值