我是靠谱客的博主 满意指甲油,最近开发中收集的这篇文章主要介绍java的for循环取出数据只是拿到最后一个_python数据类型(字符串,列表已单独成两篇文章)...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据存储

0268d7408bd1f3dc807bd6bb4ae7a33f.png

运算符

b5f3b9f70ffbb2fc8dd0a530e4d5b076.png

常用及不常用函数

fb39717a025c1b7397aa7ba31b5cd6b7.png

len()

字符串
列表
list = [10, 20, 30, 40]
print(min(list))    # 10

# 1 2 3 4 5 6 7 8 9
for i in range(1, 10, 1):        # for i in range(10)
    print(i)

# 1 3 5 7 9
for i in range(1,10, 2)
    print(i)

enumerate(可遍历对象, start=0)

注:start参数用来设置遍历数据的下标和起始值,默认为0

list = ['a', 'b', 'c', 'd', 'e']
for i in enumerate(list, start=1):
    print(i)


运行结果
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')
(5, 'e')


e·g:
list = ['a', 'b', 'c', 'd', 'e']
for i in enumerate(list):
    print(i)
for index, char in enumerate(list, start=1):
    print(f'下标是{index},对应的字符是{char}')


运行结果
(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
(4, 'e')
下标是1,对应的字符是a
下标是2,对应的字符是b
下标是3,对应的字符是c
下标是4,对应的字符是d
下标是5,对应的字符是e

元组

tuple = (2, )
元组必须有逗号

变量名[索引]

tuple 

元组可以遍历

元组的查询

查询数字1有多少个

可变类型和不可变类型

可变类型:列表,集合,字典,对象

不可变类型:数值,字符串,布尔,元组

内存地址未改变说明是可变类型

list1 = [1, 2, 3]
print(id(list1))
tuple = (1, 2, 3)
print(id(tuple))
list1.append(4)
print(id(list1))
tuple = (1, 2, 3, 4)
print(id(tuple))

运行结果
225 381 644 6664          
225 381 824 4480
225 381 644 6664        
225 381 827 4664

1,3行相同地址

元组与列表互相转换

列表转元组

tuple = tuple(list1)

元组转列表

list1 = list1(tuple)

字典

字典是使用 名称 与 实体 —— 对应数据存储机制

名称:键(key)—— 唯一

实体:值(value)—— 不限制

字典就是名称实体对,简称 键值对

创建格式:

变量名 = {键1:值1,键2:值2.。。。。}

字典没有索引的概念,通过‘键’去寻找

取单个数据

dict["b"]

如果键名存在,则修改数据,如果键名不存在,则在字典鄂最后添加新的键值对

# 键名存在
dict = {"a":"a1", "b":"b1"}
dict["a"] = "a2"
print(dict)


运行结果
{"a":"a2", "b":"b1"}

# 键名不存在
dict = {"a":"a1", "b":"b1"}
dict["c"] = "c1"
print(dict)


运行结果
{"a":"a2", "b":"b1", "c":"c1"}

字典的数据调用格式

使用字典数据:

变量名[键]

修改/添加字典数据:

变量名[键] = 值

字典遍历

dict = {"a":"a1", "b":"b1"}
for i in dict:
    print(i, end = ":")
    print(dict[i])


运行结果
a: a1
b: b1

注:使用for循环迭代字典取出的是键key,再根据键key取出对应的值value。

dict1 = {"a": "a1", "b": "b1"}
for i in dict1:
    print(i, end = ":")
    print(dict1[i])


运行结果
a: a1
b: b1

即使键名不存在,也会返回None,不会报错影响程序的执行

dict1 = {"a": "a1", "b":"b1"}
print(dict1.get("d")


运行结果
None

pop去删除指定的键值对,拿到该键值对的值

dict1 = {"a": "a1", "b":"b1"}
a = dict1.pop("a")
print(a)
print(dict1)


运行结果
a1
{"b":"b1"}

popitem删除字典中最后一个键值对,将他们数据拿到

dict1 = {"a": "a1", "b":"b1"}
b = dict1.popitem()
print(b)
print(dict1)


运行结果
("b":"b1")
{"a": "a1"}

添加

dict1 = {"a": "a1", "b":"b1"}
dict1["d"] = "d1"
print(dict1)


运行结果
{"a": "a1", "b":"b1", "d": "d1"}

添加键值对,如果键名存在,而是作为无效的方式存在

键名不存在,则在最后添加键值对信息

dict1.setdefault("d", "d1")
print(dict1)

键名存在视为无效,不会报错

dict1.setdefault("a", "a2")
print(dict1)

添加一个字典到另一个字典

dict1 = {"a": "a1"}
dict2 = {"b": "b1"}
dict1.update(dict2)
print(dict1)


运行结果
{"a": "a1", "b": "b1"}

键名相同会修改原有的value值

dict1 = {"a": "a1"}
dict2 = {"a": "a2", "b":"b1"}
dict1.update(dict2)
print(dict)


运行结果
{"a": "a2", "b":"b1"}

keys()可以拿到一个列表,列表里是所有的键名

dict1 = {"a": "a2", "b":"b1", "c": "c1"}
a = dict1.keys()
print(a)


运行结果
dict_keys(["a", "b", "c"])

是否可以拿到所有的值(value)

dict1 = {"a": "a1", "b":"b1"}
b = dict1.values()
print(b)


运行结果
dict_values(["a1", "b1"])

拿出所有的键值对,一个以键值对为单个元组的列表

dict1 = {"a": "a1", "b":"b1"}
print(dict1.items())


运行结果
dict_items([("a": "a1"), ("b":"b1")])

clear 全部清除

dict1 = {"a": "a1", "b":"b1"}
print(dict1.clear())


运行结果
None

字典推导式

如果有如下两个列表

list1 = ['name','age','gender']
list2 = ['tom',20,'man']
dict = {list1[i]: list2[i] for i in range(len(list1))}
print(dict)


运行结果
{'name': 'tom', 'age': 20, 'gender': 'man'}

总结:
1.如果两个列表数据个数相同,len统计任何一个列表的长度都可以
2.如果两个列表数据个数不同,len统计数据多的列表数据个数会报错,
len统计数据少的列表数据个数不会报错

如何快速合并为一个字典

答:字典推导式

字典推导式作用:快速合并列表为字典或提取字典中目标数据

# 创建字典key是1-5的数字,v是这个数字的平方
# dict1 = {k: v for i in range(1, 5)}
dict1 = {i: i**2 for i in range(1, 5)}
print(dict1)


运行结果
{1: 1, 2: 4, 3: 9, 4: 16}

集合

注:1.集合可以快速完成列表去重 2.集合不支持下标

集合创建格式:

变量名 = {数据1,数据2。。。}

特点:

集合中数据是无序的,无法使用索引进行操作

集合中的数据是不重复的,重复数据将被过滤

数据不重复,有去重的效果(比如,网址重复)

list = [1, 2, 3, 1, 2]
set = set(list)
print(set)


运行结果
{1, 2, 3}

如果创建空集合:set()

# 增加
parame.add(5)
print(parame)

删除

parame.remove(6)    # 元素不存在会 报错
parame.discard(6)    # 元素不存在不会报错
print(parame)

集合推导式

list = [1, 1, 2]
set = {i ** 2 for i in list}
print(set)


运行结果
{1, 4}
注:集合有去重功能所以只有两个数据

最后

以上就是满意指甲油为你收集整理的java的for循环取出数据只是拿到最后一个_python数据类型(字符串,列表已单独成两篇文章)...的全部内容,希望文章能够帮你解决java的for循环取出数据只是拿到最后一个_python数据类型(字符串,列表已单独成两篇文章)...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部