最近想着出一个Python小白零基础入门系列的文章,希望能对入门的小伙伴有所帮助,内容会囊括简单的数据类型、列表、字典、循环以及函数的定义,对于一些概念会以图解的方式进行讲解。今天这篇文章就介绍一下Python中的变量以及简单的数据类型,文末还列了一些练手的题目,大家可以边学边练!
一、变量 1、变量是什么 在Python中,变量是用来 储存数据 的,更直白点,变量和我们小学时接触到的数学中的 x 和 y 一样,都是给某个数据 取个名字 ,只是这里的数据不仅仅局限于数字,还可以是文本、数组等。下方的代码块中, a , b , c 都是一个变量,各自储存了 不同类型 的数据。关于具体的数据类型,下面会详细讲。
a = 1 #数字 b = "Python" #文本 c = [1,2,3,4] #数组 2、命名规则 就像中国人和美国人取名都有不同规则一样,在Python中,关于变量的命名也有自己的规则。
变量名只能包含 字母 、 数字 和 下划线 。同时,变量名 不能以数字开头 。如 var_1 和 1 都是正确的写法,但是 1_var 和 1 是错误写法。 变量名 不能包含空格 ,如果需要分割可使用 下划线 分割。如 var_1 ,若写成 var 1 则会报错。 不要将Python 关键词 和 函数名 用作变量名,这一条规则等后期你熟悉Python后便自然而然理解了。 二、简单的数据类型 Python中有许多不同的数据类型,这些数据类型也是为了解决实际的问题而产生的,比如记录一个人的年龄我们需要用到数值型,判断一个人的性别需要用到布尔型(是或否),记录一个人的名字就需要用到字符型(文本)。
刚接触编程语言的人可能对布尔型、字符型这类名词感到很陌生,但说白了这些词只是这类数据在计算机语言中的“名字”,就如中国的 姓名 在英文上是 name ,类比到生活中所熟悉的 文本 在计算机中叫 字符串 。下面会就一些简单的数据类型进行具体的介绍。
数值型 数值型就是咱们平时生活中的数字,在Python中分为两大类,分别是 整型 和 浮点型 。
1、整型(int)
整型就是数学中的 整数 ,如1,100,123,-123
2、浮点型(float)
浮点数就是 小数 ,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的 小数点位置是可变的 ,比如,1.23x10^9和12.3x10^8是完全相等的。浮点数如1.23,3.14,-9.01 等
在Python中,可以对数值型数据执行加(+)减(-)乘( )除(/)以及乘方( *)等运算。
In [25]: a = 2 In [26]: b = 3 In [27]: c = 4.5
In [28]: a + b Out[28]: 5
In [29]: a - b Out[29]: -1
In [30]: a * c Out[30]: 9.0
In [31]: c / b Out[31]: 1.5
In [32]: a ** b Out[32]: 8 布尔型 布尔型变量是有两种 逻辑状态 的变量,它包含两个值:真和假,在Python中表示为 True 和 False 。对布尔型变量可以进行 与(and) , 或(or) , 非(NOT) 的运算,什么是与或非?通过例子来看一下:
#与:只有同时为True时最终结果才为True In [35]: True and True Out[35]: True
In [36]: True and False Out[36]: False
#或:只要有一个为True结果即为True In [38]: True or True Out[38]: True
In [39]: True or False Out[39]: True
#非:对原逻辑词的否定 In [41]: not True Out[41]: False
In [42]: not False Out[42]: True
In [43]: not (True or False) Out[43]: False 当然进行关系运算(或称比较运算)也可以产生布尔值,关系运算有以下6种
符号 含义 符号 含义
大于 >= 大于等于 < 小于 <= 小于等于 == 等于 != 不等于 In [46]: 30 > 500 Out[46]: False
In [47]: 2 == 5 Out[47]: False
In [48]: 210 < 56 Out[48]: True 字符串 字符串就是一系列的字符。在Python中,用 引号 (单引号或双引号)括起来的都是字符串,在上面也提到过,字符串就是我们平常见到的 文本数据 ,如下所示:
"Hello world.I like Python." 'I like Python, too.' 字符串有许多的使用方式,下面列举出了一些常见的操作:
In [49]: a = " Hello" #创建字符串" Hello"并存储到a变量中 In [50]: b = " world " #创建字符串" world "并存储到b变量中
#1.字符串的拼接 In [51]: c = a + b In [52]: c Out[52]: ' Hello world '
#2.将字符串中的字母全部转换为大写 In [53]: c.upper() Out[53]: ' HELLO WORLD '
#3.将字符串中的字母全部转换为小写 In [54]: c.lower() Out[54]: ' hello world '
#4.将字符串中的单词首字母大写化 In [55]: c.title() Out[55]: ' Hello World '
#5.去掉字符串中左右的空格 In [57]: c.strip() Out[57]: 'Hello world'
#6.去掉字符串中左边的空格 In [58]: c.lstrip() Out[58]: 'Hello world '
#7.去掉字符串中右边的空格 In [59]: c.rstrip() Out[59]: ' Hello world'
#8.将单词"world"替换为"python" In [60]: c.replace("world","python") Out[60]: ' Hello python ' 如果你要实现从字符串中获取一段 子字符串 的话,就涉及到字符串的 索引操作 (俗称切片),可以使用 [头下标:尾下标:步长] 来截取相应的字符串,其中下标是 从 0 开始 算起(从左往右的话),截取的时候不会包含 尾下标对应的字符 ,下标可以为空表示取到头或尾。如下图:
In [67]: string = "Python"
#获取第3个字符 In [68]: string[2] Out[68]: 't'
#获取前三个字符,可以看到'h'并不包含在内
In [69]: string[0:3]
Out[69]: 'Pyt'
#从右往左获取第四个字符 In [70]: string[-4] Out[70]: 't'
#从头截取到第5个字符 In [78]: string[:5] #和string[0:5]等价 Out[78]: 'Pytho' 涉及到步长的操作:
#从第1个元素到第5个元素,每隔两个元素截取一个 #方向为正,步长为2 In [73]: string[:5:2] Out[73]: 'Pto' #图解如下
#从索引为-1到-3位置(到不了-4),每隔两个元素截取一个 #方向为负,步长为2 In [74]: string[-1:-4:-2] Out[74]: 'nh' #图解如下
数据类型之间的转化 当然,上述的这些数据类型也是可以相互转换的,直接来看看实际的例子,这里主要看数字字符串(如”123“)和数值之间的相互转换。
In [79]: a = 1 In [80]: b = "2"
#数值型转换为字符串 In [81]: str(a) Out[81]: '1'
#数字字符串转换为数值 In [82]: int(b) Out[82]: 2 三、练习题 1 a=100,b=2,求a+b,a/b,a×b,和 a^b 2 str(1) + "1" 和 int("1") + 1 有什么区别 3 False and (not False) 和 True or False and False 返回什么值 4 已有字符串 string = " What is Your Name? " ①去掉首尾空格
②截取前三个字母
③将 What 替换为 Which
④将所有单词的首字母变成大写的
⑤将所有字符变成大写
⑥将所有字符变成小写的
⑦将字符串反转成 ' ?emaN ruoY si tahW '