写在前面:
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
传送门:
day01基础知识
day02知识分类
day03运算符
day04数字与字符串
day05列表
day06元组与字典
day07条件与循环
day08函数概念
day09数据结构
day10模块介绍
day11文件操作
day12编程学习
day13编程学习
day14编程学习
day15编程学习
day16编程学习
day17编程学习
day18编程学习
Python学习:day02
Python基本数据类型
- python中变量无需声明,但使用之前必须赋值(变量在赋值后才会被创建)
- 与c语言不同,变量无类型的说法,所谓的类型是指内存中对象的类型。
- “=”赋值从左向右,即把左边的值赋给右边的变量名。
三种赋值情况:
counter = 100 # 整型变量
miles = 1000.0 # 浮点型变量
name = "runoob" # 字符串
多个变量赋值
- python允许多个变量同时赋值
赋值相同:a=b=c=1
赋值不同:a,b,c=1,2,“string”
标准数据类型
Number(数字)
- 指定具体数值赋给变量名时,Number对象就会被创建
- 可通过使用del语句删除单个或多个对象
- Python还支持复数,用a+bj或complex(a,b)表示,a,b均为浮点型
sequence(序列)
String(字符串)
- Python中的字符串用单引号 ’ 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。
字符串详见day01
List(列表)
- 列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(有点类似c语言中的数组)
- 类似于字符串,列表也可以用于索引以及截取,截取后返回一个包含截取元素的新列表
- 截取语法格式: 变量[头下标:尾上表]
- 处理方法类似于字符串,+号为列表连接运算符,*为重复操作。
-
- 与字符不同的是,列表元素可以进行改变,右特定函数进行操作,见后续。
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
tinylist = [123, 'runoob']
print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (tinylist * 2) # 输出两次列表
print (list + tinylist) # 连接列表
- 后续完善
Tuple(元组)
- 元组与列表类似,不同在元组元素不能修改,元组写在小括号()里,之间与列表一样用逗号隔开。
- 大部分性质与list和字符串类似
- 也可被索引,索引规则和列表相同
- 元组的元素无法更改,但可以包含可变对象如列表
- tup1 = () # 空元组
- tup2 = (20,) # 一个元素,需要在元素后添加逗号
- 通常情况函数返回值一般为一个,若返回多个,则是以元组方式返回的
#!/usr/bin/python3
tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )
tinytuple = (123, 'runoob')
print (tuple) # 输出完整元组
print (tuple[0]) # 输出元组的第一个元素
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple[2:]) # 输出从第三个元素开始的所有元素
print (tinytuple * 2) # 输出两次元组
print (tuple + tinytuple) # 连接元组
Set(集合)
- 构成集合的事物或对象称作元素或是成员
- 基本功能:成员关系测试或删除重复元素
- 使用 {} 或者 set()函数创建(创建空集合必须使用set(),而不是 set{},因为{}用于创建一个空字典)
- parame = {value01,value02,…}
或者
set(value) - set可以进行集合运算(方便好多)
#!/usr/bin/python3
sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}
print(sites) # 输出集合,重复的元素被自动去掉
# 成员测试
if 'Runoob' in sites :
print('Runoob 在集合中')
else :
print('Runoob 不在集合中')
# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')
print(a)
print(a - b) # a 和 b 的差集
print(a | b) # a 和 b 的并集
print(a & b) # a 和 b 的交集
print(a ^ b) # a 和 b 中不同时存在的元素
Dictionary(字典)
- 字典是一种映射类型,元素是键值对。通过键来存取元素。
- 字典用{}标识,为无序的 键(key):值(value) 的集合。
- 键(key)等关键字必须使用不可变类型,且不能重复。
- 同一个字典中,键(key)必须是唯一的。
#!/usr/bin/python3
dict = {}
dict['one'] = "1 - 菜鸟教程"
dict[2] = "2 - 菜鸟工具"
tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
print (dict['one']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict) # 输出完整的字典
print (tinydict.keys()) # 输出所有键
print (tinydict.values()) # 输出所有值
>>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
>>> dict(Runoob=1, Google=2, Taobao=3)
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
>>>
def example(d):
# d 是一个字典对象
for c in d:
print(c)
#如果调用函数试试的话,会发现函数会将d的所有键打印出来;
#也就是遍历的是d的键,而不是值.
for c in dict:
print(c,':',dict[c])#输出key:value的组合
for c in dict:
print(c+':');
print(dict[c])#考虑key不一定是string类型所以不能用+
拓展
>>> dict_1 = dict([('a',1),('b',2),('c',3)]) #元素为元组的列表
>>> dict_1
{'a': 1, 'b': 2, 'c': 3}
>>> dict_2 = dict({('a',1),('b',2),('c',3)})#元素为元组的集合
>>> dict_2
{'b': 2, 'c': 3, 'a': 1}
>>> dict_3 = dict([['a',1],['b',2],['c',3]])#元素为列表的列表
>>> dict_3
{'a': 1, 'b': 2, 'c': 3}
>>> dict_4 = dict((('a',1),('b',2),('c',3)))#元素为元组的元组
>>> dict_4
{'a': 1, 'b': 2, 'c': 3}
Python 数据类型转换
函数 | 描述 |
---|---|
int(x[,base]) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
complex(real[,imag]) | 创建一个复数 |
str(x) | 将对象x转换为字符串 |
repr(x) | 将对象x转为表达式字符 |
eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s) | 将序列s转变为一个元组 |
list(s) | 将序列s转变为一个列表 |
set(s) | 转变为可变集合 |
dict(d) | 创建一个字典,d必须是一个(key,value)元组序列 |
frozensets(s) | 转变为不可变合集 |
chr(x) | 将一个整数转变为一个字符 |
ord(x) | 将一个字符转为它的整数值 |
hex(x) | 将一个整数转换为一个十六进制字符串 |
oct(x) | 将一个整数转换为一个八进制字符串 |
end
希望明天能够继续坚持,加油!