资源池

链接:https://pan.baidu.com/s/1OGq0GaVcAuYEk4F71v0RWw

提取码:h2sd


python数据类型

  1. 字符串
  2. 列表
  3. 字典
  4. 数字(整数)
  5. 数字(浮点数)
  6. 元组
  7. 集合
  8. 布尔类型
  9. 应用-数据类型转换、切片

变量

变量:变量是存储信息(数据)的容器。

语法: [ 修饰符 ] 数据类型 变量名字 [赋值操作]

变量的三要素:

  1. 数据类型
  2. 内存地址
  3. 变量的值

变量的命名和使用

  1. 变量名只能包含数字,字母和下划线。
  2. 变量名不能包含空格,但可以使用下划线来分隔其中的单词。
  3. 不要将python关键字和函数名作为变量名。
  4. 变量名应既简短又具有描述性。

1.字符串(str)

字符串或串(String)是由数字、字母、下划线组成的一串字符。

赋值

方法1 单引号

name='du'
print(type(name))
print(name)

方法2 双引号

name="du"
print(type(name))
print(name)

方法3 三引号

name='''
du
'''
print(type(name))
print(name)

三种方法运行输出内容相同:

<class 'str'>
du

应用

index 取指定元素的下标(索引),如果没有取到报错

a = 'aaadfdfdfkajfnskiddd'
print(a.index('d')) ....运行结果 3

[] 根据索引取值或改值

#获取索引位置元素值
a = 'aaadfdfdfkajfnskiddd'
print(a[6]) ....运行结果 f

切片

#根据索引位置左侧所有值
a = 'aaadfdfdfkajfnskiddd'
print(a[:6]) ....运行结果 aaadfd

split 从左往右将字符串以指定分隔符切割成列表(可指定刀数)

msg = '192.168.250.254'
print(msg.split('.')) ...运行结果 ['192', '168', '250', '254']
msg = '192.168.250.254'
print(msg.split('.',2)) ...运行结果 ['192', '168', '250.254']

rsplit 从右往左将字符串以指定分隔符切割成列表(可指定刀数)

join 把可迭代对象变成字符串(可迭代对象:列表,元组,字典,字符串,集合)

res = ''.join(['1','2','3'])
print(res) ...运行结果 123

replace 替换字符(可以指定替换次数)

msg = '192.168.250.254'
print(msg.replace('.','-')) ...运行结果 192-168-250-254
msg = '192.168.250.254'
print(msg.replace('.','-',2)) ...运行结果 192-168-250.254

strip去除字符串两边指定字符(默认空格)

msg="======helloworld======"
print(msg.strip('=') ...运行结果 helloworld
msg="======helloworld======"
print(msg.lstrip('=')) #指定替换左侧 leaf ...运行结果 helloworld======
msg="======helloworld======"
print(msg.rstrip('=')) #指定替换右侧 right ...运行结果 ======helloworld

encode把字符串变成bytes类型

msg='你好'
res = msg.encode('utf-8')
print(res) ...运行结果 b'\xe4\xbd\xa0\xe5\xa5\xbd'

decode解码

msg=b'\xe4\xbd\xa0\xe5\xa5\xbd'
res = msg.decode('utf-8')
print(res) ...运行结果

格式化输出

name = 'du'
age = 23
#第一种玩法
res = 'my name is {}, my age is {}'.format(name,age)
print(res)
#第二种玩法
res = 'my name is {1}, my age is {0}'.format(name,age)
print(res)
#第三种玩法
res = 'my name is {n}, my age is {a},my small name si {n}'.format(a=age,n=name)
print(res) ...运行结果 my name is du, my age is 23
my name is 23, my age is du
my name is du, my age is 23,my small name si du

%s ,%d , %f 占位符,格式化输出

%s -->string 字符串(不做改变)

%d -->digit 数字(取整)

%f -->floating 浮点数 (可设置保留小数点位数)

high = 192.2
res = 'my high is %s' % high
print(res) ...运行结果 my high is 192.2

%.2f 保留两位小数

a=7.5256664362
print('%.2f' % a ) ...运行结果 7.53

修改字符串大小写

msg='Hello,World'
print(msg.upper())
print(msg.lower()) ...运行结果 HELLO,WORLD
hello,world

合并字符串

msg1='hello'
msg2='world'
full_msg=msg1+' '+msg2
print(full_msg) ...运行结果 hello world

2.列表 (list)

List(列表) 是 Python 中使用最频繁的数据类型。

列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。

列表用 [ ] 标识,是 python 最通用的复合数据类型。

列表中可以保存多个有序数据。

列表可以保存任意对象

赋值

a4 = [1,2,3,'a1',(123)]
print(type(a4))
print(a4) ...运行结果 <class 'list'>
[1, 2, 3, 'a1', 123]

应用

count统计指定元素个数

students = ['f','a','b','c','d','d','1',2]
print(students.count('d'))
print(students.count(2)) ...运行结果 2
1

len统计列表长度(len函数可以统计所有可迭代对象的长度)

students = ['f','a','b','c','d','d','1',2]
print(len(students)) ...运行结果 8

调用列表中的元素 :listname[索引]

students = ['f','a','b','c','d','d','1',2]
print(students[3]) ...运行结果 c

index取指定元素的下标(索引),如果没有取到报错

students = ['f','a','b','c','d','d','1',2]
print(students.index('f')) ...运行结果 0

append会把指定元素追加到末尾

students = ['f','a','b','c','d','d','1',2]
students.append('sb250')
students.append('sb250')
print(students) ...运行结果 ['f', 'a', 'b', 'c', 'd', 'd', '1', 2, 'sb250', 'sb250']

remove 删除指定元素

students = ['f','a','b','c','d','d','1',2]
students.remove('f')
print(students) ...运行结果 ['a', 'b', 'c', 'd', 'd', '1', 2]

可迭代对象包括:列表,字典,字符串,元组,集合

extend把可迭代对象传入进去

students = ['f','a','b','c','d','d','1',2]
students.extend(['asd','qwe'])
print(students ...运行结果 ['f', 'a', 'b', 'c', 'd', 'd', '1', 2, 'asd', 'qwe']

3.字典(dict)

字典的值(value)可以是任意对象

字典的键(key)可以是任意不可变对象(int、str、bool、tuple。。。。)常用str

字典的键(key)不可以重复,重复后面的值会覆盖前面的值

赋值

list1 = {'name':'007','age':88}
list2={
'name':'007',
'age':88
}
print(type(list1))
print(list2) ...运行结果 <class 'dict'>
{'name': '007', 'age': 88}

应用

update把两个字典合并成一个字典(更新)

info1 = {
'name':'du',
'high':190,
'weight':160,
}
info2 = {
'telephone':110,
'name':'007'
} info1.update(info2)
print(info1)
print(info2) ...运行结果 {'name': '蒋介石', 'high': 190, 'weight': 160, 'telephone': 110}
{'telephone': 110, 'name': '007'}

items将所有键值对全部打印出来

info1 = {
'name':'du',
'high':190,
'weight':160,
} print(info1.items()) ...运行结果 dict_items([('name', 'du'), ('high', 190), ('weight', 160)])

keys打印字典中所有的key

info1 = {
'name':'du',
'high':190,
'weight':160,
}
print(info1.keys()) ...运行结果 dict_keys(['name', 'high', 'weight'])

values打印字典中所有的value

info1 = {
'name':'du',
'high':190,
'weight':160,
} print(info1.values()) ...运行结果 dict_values(['du', 190, 160])

get通过key取value,如果取不到返回None,不能重新赋值

[]通过key取value,如果取不到报错,可以重新赋值的

info1 = {
'name':'du',
'high':190,
'weight':160,
} print(info1.get('aa'))
info1['name'] = '007'
print(info1) ...运行结果 None
{'name': '007', 'high': 190, 'weight': 160}

字典添加键值对

info1 = {
'name':'du',
'high':190,
'weight':160,
} info1['age']=88 print(info1) ...运行结果 {'name': 'du', 'high': 190, 'weight': 160, 'age': 88}

4.数字(整数)(int)

Python支持四种不同的数字类型:

  • 数字数据类型用于存储数值。他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。
  • int(有符号整型)
  • long(长整型[也可以代表八进制和十六进制])
  • float(浮点型)
  • complex(复数)

赋值

num = 250
print(type(num))
print(num) ...运行结果 <class 'int'>
250

应用

在python中可以对整数进行加(+)减(-)乘(*)除(/)

5.浮点数(float)

赋值

num= 11.1
print(type(num))
print(num) ...运行结果 <class 'float'>
11.1

6.元组(tuple)

元组不能二次赋值,相当于只读列表。

赋值

num = (1,2,3,4,[1,2,3,(1,2,3)])
print(type(num))
print(num) ...运行结果 <class 'tuple'>
(1, 2, 3, 4, [1, 2, 3, (1, 2, 3)])

应用

  • 列表可读可修改,元组一般是用来读的
  • 在相同元素的情况下,列表会占用的资源更多一些

7.集合(set)

集合和列表非常相似

不同点:

  • 集合中只能存储不可变对象
  • 集合中存储对象是无序的(不是按照元素的插入顺序保存的)
  • 集合中不能出现重复的元素

赋值

num = {1,2,3,3,3,3,3}
print(type(num))
print(num) ...运行结果 (集合可以自动去重) <class 'set'>
{1, 2, 3}

注:xxx={} 为字典

8.布尔(bool)

赋值

a = ''
print(type(True))
if a:
print('真')
else:
print('假') ...运行结果 <class 'bool'>
假

应用

两种值:Ture和False

python 中:空,0,None全部为假,其余全部为真


应用

数据类型转换

函数 作用
int(x) 将x转换成整数类型
float(x) 将x转换成浮点数类型
str(x) 将x转换成字符串
repr(x) 将x转换成表达式字符串
chr(x) 将整数x转换成一个字符
ord(x) 将一个字符x转成他对应的整数值

切片

python--基础2 (数据类型及应用)的更多相关文章

  1. Python基础之数据类型

    Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...

  2. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  3. python基础一数据类型之字典

    摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...

  4. 第一节 Python基础之数据类型(整型,布尔值,字符串)

    数据类型是每一种语言的基础,就比如说一支笔,它的墨有可能是红色,有可能是黑色,也有可能是黄色等等,这不同的颜色就会被人用在不同的场景.Python中的数据类型也是一样,比如说我们要描述一个人的年龄:小 ...

  5. python基础一数据类型之集合

    摘要: python基础一中介绍数据类型的时候有集合,所以这篇主要讲集合. 1,集合的定义 2,集合的功能 3,集合的方法 1,集合的定义 list1 = [1,4,5,7,3,6,7,9] set1 ...

  6. python基础一数据类型之元祖

    摘要: python基础一中写到数据类型元祖,那么这篇主要讲元祖. 1,元祖定义 tuple1 = (1,2,'a','b') 元祖是不可变数据,所以又名只读列表.那么如何让是元祖可变呢?可以在元祖中 ...

  7. python基础一数据类型之列表

    摘要: python基础一中写到列表,那么这篇主要讲列表. 1,定义列表 2,列表.元祖.字符串都属于序列,都可以用用索引和切片. 3,列表的方法 1,定义列表 list1 = ['a','b',1, ...

  8. Python基础一数据类型之数字类型

    摘要: python基础一中提到了数据类型,这里主要讲解的是数字类型. 数字类型: 1,整型 2,长整型 3,浮点型 4,复数型 1,整型(int) 定义a = 1 通过type函数查看数据类型,整型 ...

  9. python基础(二)----数据类型

    Python基础第二章 二进制 字符编码 基本数据类型-数字 基本数据类型-字符串 基本数据类型-列表 基本数据类型-元组 可变.不可变数据类型和hash 基本数据类型-字典 基本数据类型-集合 二进 ...

  10. Python学习day04 - Python基础(2)数据类型基础

    <!doctype html>day04 - 博客 figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { ...

随机推荐

  1. SonarQube学习(三)- 项目代码扫描

    一.前言 元旦三天假,两天半都在玩86版本DNF,不得不说,这个服真的粘度太高了,但是真的很良心. 说明: 注册账号上线100w点券,一身+15红字史诗装备以及+21强化新手武器.在线泡点一分钟888 ...

  2. DRF之访问权限控制和访问频率控制(节流)

    权限控制 前言 用户验证用户权限,根据不同访问权限控制对不同内容的访问. 建议了解视图.token验证的内容. 使用流程 自定义访问权限类,继承BasePermission,重写has_permiss ...

  3. 什么时候使用Get请求/POST请求?

    当请求无副作用时(如进行搜索),便可使用GET方法:当请求有副作用时(如添加数据行),则用POST方法. 一个比较实际的问题是:GET方法可能会产生很长的URL,或许会超过某些浏览器与服务器对URL长 ...

  4. 如何制作sitemaps网站地图

    如何制作sitemaps网站地图 1.0 前言 1.1 xml格式 1.2 常见问题 本文资料来源于网站 1.0 前言 Sitemap 可方便网站管理员通知搜索引擎他们网站上有哪些可供抓取的网页.最简 ...

  5. 九个最容易出错的 Hive sql 详解及使用注意事项

    阅读本文小建议:本文适合细嚼慢咽,不要一目十行,不然会错过很多有价值的细节. 文章首发于公众号:五分钟学大数据 前言 在进行数仓搭建和数据分析时最常用的就是 sql,其语法简洁明了,易于理解,目前大数 ...

  6. 【JavaWeb】AJAX 请求

    AJAX 请求 什么是 AJAX AJAX(Asynchronous JavaScript And XMl),即异步 JS 和 XML.是指一种创建交互式网页应用的网页开发技术. AJAX 是一种浏览 ...

  7. Promethues 之 Thanos

    Promethues简介和原理 请看我之前写的 Prometheus简介,原理和安装 https://www.cnblogs.com/you-men/p/12839535.html 官方架构问题 官方 ...

  8. .NET 5网络操作的改进

    随着.net 5在11月的发布,现在是谈论网络栈中许多改进的好时机.这包括对HTTP.套接字.与网络相关的安全性和其他网络通信的改进.在这篇文章中,我将重点介绍一些版本中更有影响力和更有趣的变化. H ...

  9. 【Vue】Vue开发环境搭建

    Vue前置学习环境 文章目录 Vue前置学习环境 IDE Node.js 调试环境 工程环境 小结 IDE WebStorm 官网下载:https://www.jetbrains.com/websto ...

  10. 【EXP/IMP】问题总结

    为了使测试与生产数据保持一致,只需要导出数据的时候,可以将测试库的表truncate,保留其它如索引,trigger,constraints,grants等不用再重新导. exp时候rows=y,其它 ...