我要悄悄学Python之变量与数据类型
变量和简单的数据类型
在学习之前,需要各位小伙伴具有百度的搜索能力。本系列分享的每一章都是核心知识。在编程的过程当中遇到的问题可以自己百度可以解决的一定要自己解决,实在是不会再问问题。
在本篇文章当中,你将学会Python中使用的各种数据,还将学习如何在程序中使用变量来表示这些数据。
变量
请看下面的代码
message = 'Hello python world'
print(message)
尝试运行上面的代码,运行结果如下:
Hello python world
在上面的代码中,我们添加了一个名为message的变量。每个变量都关联一个值——与该变量相关联的信息。在这里,message指向值为"Hello python world"的文本。
Python允许随时修改变量的值,且始终保持记录最新的结果。
具体代码如下所示:
message = 'Hello python world'
print(message)
message = '你好,Python世界'
print(message)
输出结果如下:
Hello python world
你好,Python世界
从上面的代码可以看出,我们一共给message做了两次的赋值,并在第二次的时候成功的将message的值做了修改。
变量的命名和使用
在Python中声明一个变量时,需要遵守一些规则和指南。违反这些规则将会引发错误,所以请务必牢记下述有关变量命名的规则。
- 变量名只能包含数字、字母和下划线。变量名不能以数字开头,只能以字母或者是下划线开头。例如,不能将变量命名为1_message。
- 变量名中不能包含空格,只能用下划线来分隔不同的单词。
- 不要将Python的关键字和函数名作为变量名来使用。例如print。
- 变量名应该简洁,又具有描述性。了;例如:name比n好,student_name比s_n好
- 谨慎使用 l 和 o ,因为它们容易被人们看成是1和0。
就目前而言,标准的PEP8编程规则适用的是小写字母作为变量名,两个单词使用下划线进行分隔。
使用变量时避免命名错误
每一位刚刚学习编程的初学者来说非常容易犯错,即使是经验丰富的程序员也同样会犯错误。
例如:请看下面的代码
message = '你好,世界'
print(massage)
运行结果
Traceback (most recent call last):
File "demo1.py", line 2, in <module>
print(massage)
NameError: name 'massage' is not defined
程序出现错误时,Python解释器会竭尽所能的帮你找到错误。当程序无法运行时,解释器将会提供一个Traceback,Traceback是一条记录,指出了解释器尝试运行时,在什么地方出现了错误。
上面的代码,解释器告知我们,第二行代码出现了错误。并发现了名称错误,并报告打印变量massage未定义。
变量是标签
变量被描述为可存储值的盒子。在你刚接触变量时,这种定义可能是有帮助的。但它并没有准确描述Python内部表示变量的方式。一种定义是,变量是可以赋值的标签,也可以说变量指向特定的值。
字符串
大多数程序定义并收集某种数据,然后使用它们来做一些有意义的事情。现在让我来介绍第一种数据类型——字符串。
字符串就是一系列字符。在Python中,用引号括起来的都是字符串,其中的引号包括双引号和单引号。
如下所示:
'hello, this is a string'
"Hello, this is a string"
这种灵活性让你能够在字符串中包含引号和撇号:
'I told my friend, "python is my favorite language!"'
"One of python's strengths is its diverse and supportive community"
在上面的字符串中其实可以看出,如果字符包含单引号,则字符串需要包含在双引号中;如果字符串包含双引号,则字符串需要包含在单引号中。
接下来我们要学习的内容是使用字符串的方法,对字符串做一些简单的操作。
使用方法,修改字符串的大小写
对于字符串,最简单的方法就是修改其中单词的大小写。请看下面的代码:
message = 'hello python'
print(message.title())
运行结果:
Hello Python
在这个示例中,变量message指向小写的字符串“hello python”。在函数调用print()中,方法title()出现在这个变量的后面。方法是Python对数据执行的操作。在message.title()中,message后面出现的(.)让Python对变量message执行方法title()指定的操作。每个方法后面都会跟着一对圆括号,这是因为方法通常需要额外的信息来完成其工作。函数titile()不需要添加额外的信息,因此括号内是空的。
从上面的代码可以看出,方法title()是让每个单词的首字母为大写。
当然,字符串还有其它处理方法,例如,可以将字符串中的每个字符都改为大写或小写,具体代码如下所示:
message1 = 'hello python'
print(message1.upper())
message2 = 'HELLO PYTHON'
print(message2.lower())
运行结果如下:
HELLO PYTHON
hello python
方法upper()将所有字符转化为大写,方法lower()将所有字符转换为小写。
在存储数据时,方法lower()很有用,很多时候,你无法依靠用户来提供正确的大小写,因此需要将字符串转化为小写再存储它们。
在字符串中显示变量
在有些情况下,可能要在字符串中使用变量。例如,你可能使用两个变量分别表示姓和名,然后合并两个值表示姓名;具体代码如下所示:
first_name = '李'
last_name = '小明'
full_name = f'{first_name}{last_name}'
print(full_name)
运行结果如下:
李小明
这种字符串称为f字符串。f是format(设置格式)的简写,因为Python通过花括号内的变量名替换为变量值来设置字符串的格式。
当然在花括号内的变量依然可以使用方法,不会有任何的影响。
first = 'hello'
last = 'jacky'
full = f'{first}, {last.title()}'
print(full)
运行结果如下:
hello, Jacky
使用制表符或换行符添加空白
在编程中空白指的是:空格、制表符和换行符。
制表符可以使用字母组合\t表示
代码如下:
>>> print("\tpython")
python
>>>
换行符可以用字母组合\n表示
代码如下:
>>> print("language:\npython\njava\nc")
language:
python
java
c
>>>
删除空白
在程序中如果出现了额外的空白,那是错误的。例如:'python' 和 'python ' 对于用户来说可能没有什么不同的地方,但是对于程序来说,这是两个不同的字符串。
那么如何删除字符串末尾的空白呢?可以使用方法rstrip()
代码如下所示:
>>> language = 'python '
>>> language
'python '
>>> language.rstrip()
'python'
>>> language
'python '
从上面的代码可以看到,当调用方法时,空格就被删除了。但是这种删除只是占时的,当再次访问language变量时,名,空格依然存在。
为了将这个空白删除,可以将结果指向原来的变量即可。代码如下:
>>> language = 'python '
>>> language = language.rstrip()
>>> language
'python'
>>>
当然,除了可以剔除字符串末尾的空白之外,还可以剔除字符串开头和两端的空白。可以使用方法lstrip()和strip()。
数
在编程中,经常用数来计分、数据可视化、存储web应用信息,等等。Python能够根据数的用法以不同的方式处理他们。
整数
在Python中,可以对整数进行加、减、乘、除运算。
>>> 2+3
5
>>> 2-3
-1
>>> 2*3
6
>>> 3/2
1.5
>>>
在终端中,Python直接返回运算结果,Python使用两个乘号表示乘方运算。
>>> 3**2
9
>>> 3**3
27
>>> 10**6
1000000
>>>
同时Python还支持使用括号改变运算顺序。
>>> 2+3*4
14
>>> (2+3)*4
20
>>>
浮点数
Python将所有带小数点的数称为浮点数。很大程度上说,使用浮点数时无需考虑其行为。你只要输入使用的数,Python会按你期望的方式处理它们。
>>> 0.1+0.1
0.2
>>> 0.2+0.2
0.4
>>>
但是,需要注意的是,结果包含的小数位数可能是不确定的。
>>> 0.2+0.1
0.30000000000000004
>>> 0.1*3
0.30000000000000004
>>>
所有语言都存在这个问题,没有什么可以担心的。Python会尽量找一个精确表示结果的方法,但是鉴于计算机内部表示数的方法,这些情况下比较难。
整数和浮点数
任意两个数相处时,结果总是浮点数,即便这两个数都是整数且能相除。
>>> 6/3
2.0
>>>
在其他运算中,如果有一个数是浮点数,那么得到的结果也是浮点数。
>>> 1+2.0
3.0
>>> 1+1+1.0
3.0
>>>
>>> 2*2.0
4.0
常量
常量类似于变量,其值在程序的整个生命周期中都保持不变。Python没有内置的常量类型,但是Python程序员会使用全大写来指出应将某个变量视为常量,其值应始终不变。
MAX_CONNECTIONS = 5000
在代码中,要指出应将特定的变量视为常量,可将其字母全部大写。
最后
啃书君说:
文章的每一个字都是我用心敲出来的,只希望对得起每一位关注我的人。点【点赞】,让我知道,你们也在为自己的学习拼搏和努力。
路漫漫其修远兮,吾将上下而求索。
我是啃书君,一个专注于学习的人,你懂的越多,你不懂的越多。更多精彩内容,欢迎关注公众号了不起的Python程序员!