Python 基础数据结构

相信大家在工作中,会有一些头大的需求,特点是:一次性,稍微有点复杂,手工也能弄完。用 Java 写吧太笨重,代码多,不用 Java 写手工搞吧,痛不欲生。

比如下面的需求:

  • 一个新的算法实现了,需要验证效果,造一些数据到数据库里跑;

  • 自动生成一些数据库的表结构,批量在其他关系型数据库建表;

  • 封装一些 shell 脚本;

 

这三个需求使用 Java 都不太合适,连接数据库需要写个 JDBC,或者得使用第三方的框架,Jfinal 或者 Mybatis,那就得配个 Maven 环境,IDEA 环境,痛不欲生啊。

推荐一门脚本语言,Python,我非常喜欢,易上手,表达能力强,语法简洁,学好了以后还可以做高级的机器学习/深度学习,入行 AI 等。

关于 Python 的环境配置,会单独一篇文章来讲,今天主要分享一下 Python 的数据结构。

列表 - List

创建一个列表,只需要把元素以逗号隔开,使用方括号括起来即可,列表的元素可以是不同的类型,也可以重复

my_list1 = [1, 2, 3, 4, 5]
my_list2 = ['hello', True, 1, 2, 3]

访问列表中的值,使用方括号里面加索引即可,索引是从0开始的。

下面 [1:4] 是切片的写法,含头不含尾,意思是从下标是第1个元素开始到下标第3个元素结束;[:4] 表示从下标第0个元素开始到下标第3个元素结束。

my_list1 = [1, 2, 3, 4, 5]
my_list2 = ['hello', True, 1, 2, 3]

print(my_list1[0])
print(my_list2[1:4])
print(my_list2[:3])

更新列表,使用 append 来往末尾新增,使用下标来更新某个元素

## 空列表
list = []
## 使用 append() 添加元素
list.append('Google')
list.append('Runoob')
print(list)

# 修改下标为0的元素为2
list[0] = 2
print(list)

查看列表长度

## 空列表
print(len(list))

集合 - set

集合的元素是不可以重复的

创建一个 set,使用大括号或者 set() 可以直接创建,如下

# 创建一个集合
my_set = {1, 2, 3}
print(my_set)

# 创建一个空集合,添加元素进去
my_set = set()
my_set.add(1)
my_set.add(2)

print(my_set)

判断元素是否在集合内

print(1 in my_set)

移除一个元素

my_set.remove(1)

求两个集合的交集

my_set = {1, 2, 3}
my_set1 = {2, 3, 4}
print(my_set & my_set1)

字典

字典类似 Java 中的 Map,用来存储键值对

创建一个字典,使用大括号

my_dict = {"1": 1, "3": 5, 'my': 12}

访问字典的值,使用方括号加键值

my_dict = {"1": 1, "3": 5, 'my': 12}

print(my_dict['1'])

修改字典的值

my_dict['1'] = 34

遍历字典,使用字典的 items 方法

for k,v in my_dict.items():
print(k, v)

这是数据结构的基础用法了,有了这些基础,就可以实现基本需求了。

当然我们还需要 使用 python 其他包配合完成更加复杂的需求,例如使用 pymysql 连接 mysql 数据库,使用 内置的 i/o 读取文件,使用 requests 库来访问 互联网网页和接口。更多的功能会持续更新哟。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值