1.整数与浮点数
Python里面的整数和数学里面的整数定义是一样的,Python里面的浮点数可以看作是数学里面的小数。
整数的加、减、乘可以直接在print中进行,也可以通过括号来改变运算的优先级:
>>> print(1-10)
-9
>>> print(3+2-5 * 0)
5
>>> print((3+2-5) * 0)
0
print(0.1 + 0.2)
print(1 / 3)
print(1 * 0.3)
print(0.1 + 0.2 - 0.3 * 0.4 / 0.5)
0.30000000000000004
0.3333333333333333
0.3
0.06000000000000005
结果并不是0.3,而是一个很长的浮点数。这不是Python的问题,Java、C语言、C++等各种语言都有这个问题。这是由于计算机里面浮点数的储存机制导致的。有兴趣可以了解一下浮点数从十进制转化为二进制的原理和结果。 由于这个原因,不应该直接使用Python来进行精确的计算,但是进行日常的精度不高的四则运算是没有问题的
2. 变量
所谓变量,可以理解为一个存放其他数据的盒子。使用变量可以减少重复输入。
长 = 10
宽 =5
高 = 2
变量在等号的左边,变量里面将要存放的值在等号的右边。等号是赋值的意思。将等号右边的值赋给左边的变量,这样变量里面的值就等于右边了。而如果等号的右边也是一个变量,那么就把等号右边的变量里面的值赋给等号左边的变量。 虽然在Python 3中可以使用中文作为变量名,但还是建议、将变量名设置为英文。
3.字符串、列表、元组
1)字符串(String) 在Python中,除了整数和浮点数外,还有字符串。任何被单引号或者双引号括起来的内容都可以认为是字符串。字符串也可以赋值给变量。
string_6 = '123'
int_variable = 123
字符串的内容可以是中文,可以是英文,可以是数字,可以是空格,可以是中文、英文、数字和空格的组合。
2)列表(List) 列表是Python里面的容器之一,由方括号和方括号括起来的数据构成。里面的数据可以是整数、浮点数、字符串,也可以是另一个列表或者其他的数据结构。列表里面的每一项叫作列表的一个元素,每个元素之间使用英文逗号隔开:
list_1 = [1, 2, 3, 4, 5]
list_2 = ['abc', 'x', '', 'kkk']
list_3 =[]
list_4 =[123, 'xyz', 3.14,[1, 2, 'yy']]
3)元组(Tuple) 元组是Python里面的容器之一,由小括号和小括号括起来的数据构成。它的外型和列表非常像,只不过列表使用的是方括号,元组使用的是小括号。
tuple_1 = (1, 2, 3, 4, 5)
tuple_2 = ('abc', 'x', '', 'kkk')
tuple_3 = ()
tuple_4 = (123, 'xyz', [1, 't', 'z'], ('o', 'pp'))
元组和列表的区别:列表生成以后还可以往里面继续添加数据,也可以从里面删除数据;但是元组一旦生成就不能修改。如果它里面只有整数、浮点数、字符串、另一个元组,就既不能添加数据,也不能删除数据,还不能修改里面数据的值。但是如果元组里面包含了一个列表,那么这个元组里面的列表依旧可以变化。
3.1 数据的读取
字符串、列表和元组。可以使用完全一样的方式从这3个数据结构中读取数据。 1)指定下标 在大多数编程语言里面,下标都是从0开始的,Python也不例外。第0个元素就是指最左边的元素。
example_string = '我是字符串'
example_list =['我', '是', '列', '表']
example_tuple = ('我', '是', '元', '组')
在这3数据结构中,想取任何一个元素,都可以直接使用: 变量名[下标] -1表示最后一个元素,-2表示倒数第2个元素,-3表示倒数第3个元素,以此类推。
2)切片操作 字符串切片以后的结果还是字符串,列表切片以后的结果还是列表,元组切片以后的结果还是元组。切片的格式为: 变量名[开始位置下标:结束位置下标:步长]
其中“开始位置下标”“结束位置下标”“步长”可以部分省略,但是不能全部省略。这3个参数对应的都是数字。切片的结果包括“开始位置下标”所对应的元素,但是不包括“结束位置下标”所对应的元素。
省略“开始位置下标”,表示从下标为0的元素开始计算。省略“结束位置下标”,表示直到最后一个元素且包含最后一个元素。例如:
>>> print (example_string[1:3])
是字
>>> print (example_list[:3])
我是列
>>>print (example_tuple[2:])
元组
省略“开始位置下标”和“结束位置下标”,“步长”取-1,表示倒序输出,例如:
>>> print(example_string[::-1])
串符字是我
3)拼接与修改 字符串,元组和列表之间可以相加,相加表示拼接起来。例如:
string_1 = '你好'
string_2 = '世界'
string_3 = string_1 + string_2
print(string_3)
tuple_1 = ('abe', 'xyz')
tuple_2 = ('哈哈哈哈', '嘿嘿嘿嘿')
tuple_3 = tuple_1 + tuple_2
print(tuple_3)
list_1 = ['abc', 'xyz']
list_2 = ['哈哈哈哈', '嘿嘿嘿嘿']
list_3 = list_1 + list_2
print(list_3)
你好世界
('abe', 'xyz', '哈哈哈哈', '嘿嘿嘿嘿')
['abc', 'xyz', '哈哈哈哈', '嘿嘿嘿嘿']
特别的,可以通过列表的下标来修改列表里面的值,格式为: 变量名[下标] = 新的值
列表还可以单独在末尾添加元素,例如:
list_4 = [' Python', '爬虫']
list_4.append('一')
list_4.append('酷')
print(list_4)
[' Python', '爬虫', '一', '酷']
元组和字符串不能添加新的内容,不能修改元组里面的非可变容器元素,也不能修改字符串里面的某一个字符。 字符串、列表和元组还有一些其他特性,它们之间的互相转化将在使用过程中逐渐了解吧。
4. 字典
字典就是使用大括号括起来的键(Key)值(Value)对(Key-Value对)。每个键值对之间使用英文逗号分隔,每个Key与Value之间使用英文冒号分隔。例如:
dict_1 = {'superman': '超人是一个可以在天上飞的两足兽', '天才': '天才跑在时代的前面,把时代拖得气喘吁吁。','xx': 0,42: '42是一切的答案'}
Key可以使用中文、英文或者数字,但是不能重复。Value可以是任意字符串、数字、列表、元组或者另一个字典,Value可以重复。
可以通过Key来从字典中读取对应的Value,有3种主要的格式:
变量名[key]
变量名.get(key)
变量名.get(key,'在找不到key的情况下使用这个值')
使用方括号的方式来读取字典的Value时,一定要保证字典里面有这个Key和它对应的Value,否则程序会报错。使用get来读取,如果get只有一个参数,那么在找不到Key的情况下会得到“None”;如果get有两个参数,那么在找不到Key的情况下,会返回第2个参数。
如果要修改一个已经存在的字典的Key对应的Value,或者要往里面增加新的Key-Value对,可以使用以下格式:
变量名[key] = '新的值'
如果Key不存在,就会创建新的Key-Value对;如果Key已经存在,就会修改它的原来的Value。 需要特别注意的是,字典的Key的顺序是乱的,所以不能认为先添加到字典里面的数据就排在前面。
5. 集合
集合是使用大括号括起来的各种数据,可以看作没有Value的字典。集合里面的元素不能重复。集合也是无序的。
example_set = {1,2,3, 'a', 'b','c'}
集合最大的应用之一就是去重。例如,把一个带有重复元素的列表先转换为集合,再转换回列表,那么重复元素就只会保留一个。 由于集合与字典一样,里面的值没有顺序,因此使用集合来去重是有代价的,代价就是原来列表的顺序也会被改变。
|