python笔记:第二章基本数据类型
基本数据类型
Python中的数据类型可以分为五大类:字符串、数字、容器、布尔、None
1.字符串
可以使用单引号或双引号创建字符串,可以用加号将两个字符串合并
name = '小明'
age = '9岁'
print('合并字符串:', name + age)
格式化字符串:%s
a = "I'm %s" % ('xiaoming')
print(a)
I'm xiaoming
字符串的拼接
x = "first"
y = "blood"
print(x + y)
firstblood
格式化表达字符串repr
x = "Hello\nworld"
print(x)
print(repr(x))
print(str(x))
# 输出
Hello
world
'Hello\nworld' # 格式化输出
Hello
world
长字符串
多行表示字符串
x = '''hello! I am a girl.
what are you looking for?'''
print(x)
hello! I am a girl.
what are you looking for?
反斜杠也可以使常规语句跨行
print\
(1 * 7)
7
原始字符串
不以特殊方式处理反斜杠,在正则表达式用处很大
两种相似类型:不可变的bytes 和 可变的bytearray
用来与C语言互操作以及将文本写入文件或通过网络套接字发送出去
2.整型、浮点型
- 整型:正整数或负整数
number1 = 12 number2 = -3
- 浮点型:由整数部分和小数部分组成
score = 96.5
- 复数:由实数部分和虚数部分组成
3.容器
容器:List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)
List(列表)
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。列表可以修改,可以用于切片、增、删、改、查
#创建列表
list1 = ['a', 'b', 'c', 'd', 'e']
print(list1)
['a', 'b', 'c', 'd', 'e']
#列表切片
#格式:【start:end:step】
#start:起始索引,从0开始,-1表示结束
#end:结束索引
#step:步长,end-start,步长为正时,从左向右取值。步长为负时,反向取值
#注意切片的结果不包含结束索引,即不包含最后的一位,-1代表列表的最后一个位置索引
a=[1,2,3,4,5,6]
b=a[0:5:3] // 注意是索引,不是顺序
c = a[0:3:1]
print(b)
print(c)
输出结果:
[1, 4]
[1, 2, 3]
#列表删除
del a[-1] # 删除最后一位 从0开始的序号 -1即为倒数第一位
print(a)
> [1, 2, 3, 4, 5]
del a[-2]
print(a)
> [1, 2, 3, 4, 6]
#列表修改
print("未修改之前第一个元素为:",a[0])
a[0] = '66' # 单引号可有可无
print("修改之后第一个元素为:",a[0])
#列表查询
a1 = a[0]
print("查询出列表第一个元素为:", a1)
Tuple(元组)
元组和列表类似,但是不同的是元组不能修改,元组使用小括号
#创建元组
tup = (1, 2, 3, 4, 5)
print(tup)
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。
#查询元组,下标索引从0开始
print("查询出列表第一个元素为:", tup[0])
元组中的元素值是不允许修改的,但可以对元组进行连接组合
tup1 = (23, 78);
tup2 = ('ab', 'cd')
tup3 = tup1 + tup2
print (tup3)
(23, 78, 'ab', 'cd')
Sets(集合)
Set是无序的集合,不能有重复的元素,也不能排序
#创建集合
s1 = set(['A','B','C','D'])
print(s1)
# 多次打印的字母顺序都是不同的
{'A', 'C', 'B', 'D'}
{'C', 'B', 'A', 'D'}
{'A', 'D', 'B', 'C'}
#增加元素:update
s1.update(['E'])
print(s1)
> {'A', 'D', 'E', 'C', 'B'}
#删除元素:discard
s1.discard('E')
print(s1)
#修改元素:先删除,后增加
s1.discard('D')
s1.update(['D'])
print(s1)
#查询元素
ss = 'B' in s1
print(ss)
> True
bb = 'G' in s1
print(bb)
> false
Dictionary(字典)
字典是另一种可变容器模型,且可存储任意类型对象
字典的格式如下所示:d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。值可以取任何数据类型,但键的数据类型要保持一致。
#创建字典
d = {'01': 'xiaoming', '02': 'xiaohong', '03': 'xiaowang'}
print(d)
> {'01': 'xiaoming', '02': 'xiaohong', '03': 'xiaowang'}
#增加元素
d['04'] = 'xiangfang'
print(d)
> {'01': 'xiaoming', '02': 'xiaohong', '03': 'xiaowang', '04': 'xiangfang'}
d['05'] = 12
print(d)
> {'01': 'xiaoming', '02': 'xiaohong', '03': 'xiaowang', '04': 'xiangfang', '05': 12}
#删除元素
del d['04']
print(d)
#修改
print("修改之前:",d['01'])
d['01'] = 'xiaolin'
print("修改之后:",d['01'])
#查询
d1 = d['01']
print(d1)
> xiaoming
4.布尔:True、False
主要应用在条件判断上面,发生即为True,未发生即为False。Python严格区分大小写,所以一定要注意不要写错。
5.None
Python里面特殊的空值,不能理解为0。
python笔记:第二章基本数据类型的更多相关文章
- [Python笔记][第二章Python序列-复杂的数据结构]
2016/1/27学习内容 第二章 Python序列-复杂的数据结构 堆 import heapq #添加元素进堆 heapq.heappush(heap,n) #小根堆堆顶 heapq.heappo ...
- [Python笔记][第二章Python序列-tuple,dict,set]
2016/1/27学习内容 第二章 Python序列-tuple tuple创建的tips a_tuple=('a',),要这样创建,而不是a_tuple=('a'),后者是一个创建了一个字符 tup ...
- [python笔记][第二章Python序列-list]
2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...
- Python笔记·第二章—— Python的编码问题(一)
一.什么是编码 可以说,计算机是一个即聪明又笨蛋的家伙.说它聪明,是因为他可以做很多事情,它的强大无需多说,大家应该都有所了解以及感受.但是为什么说它又是个笨蛋呢,因为我们在电脑上写出的每一个字,保存 ...
- 《DOM Scripting》学习笔记-——第二章 js语法
<Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...
- Spring学习笔记 - 第二章 - 注解开发、配置管理第三方Bean、注解管理第三方Bean、Spring 整合 MyBatis 和 Junit 案例
Spring 学习笔记全系列传送门: Spring学习笔记 - 第一章 - IoC(控制反转).IoC容器.Bean的实例化与生命周期.DI(依赖注入) [本章]Spring学习笔记 - 第二章 - ...
- SpringMVC学习笔记 - 第二章 - SSM整合案例 - 技术整合、统一结果封装、统一异常处理、前后联调、拦截器
[前置内容]Spring 学习笔记全系列传送门: Spring学习笔记 - 第一章 - IoC(控制反转).IoC容器.Bean的实例化与生命周期.DI(依赖注入) Spring学习笔记 - 第二章 ...
- Android群英传笔记——第二章:Android开发工具新接触
Android群英传笔记--第二章:Android开发工具新接触 其实这一章并没什么可讲的,前面的安装Android studio的我们可以直接跳过,如果有兴趣的,可以去看看Google主推-Andr ...
- The Road to learn React书籍学习笔记(第二章)
The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...
- 深入理解 C 指针阅读笔记 -- 第二章
Chapter2.h #ifndef __CHAPTER_2_ #define __CHAPTER_2_ /*<深入理解C指针>学习笔记 -- 第二章*/ /* 内存泄露的两种形式 1.忘 ...
随机推荐
- 四月十六号java基础知识
1.如果没有一个机制来限制对类中成员的访问,则很可能会造成错误的输入如果在类的成员声明前面加上修饰符private,则无法从类的外部访问到该类内部的成员,而只能被该类自身访问和修改,而不能被任何其他类 ...
- SpringBoot 整合 JDBC 实例
0.数据库表 CREATE DATABASE springboot; USE springboot; CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_ ...
- Kubernetes客户端认证(二)—— 基于ServiceAccount的JWTToken认证
1.概述 在 Kubernetes 官方手册中给出了 "用户" 的概念,Kubernetes 集群中存在的用户包括 "普通用户" 与 "Service ...
- 一天吃透MySQL面试八股文
什么是MySQL MySQL是一个关系型数据库,它采用表的形式来存储数据.你可以理解成是Excel表格,既然是表的形式存储数据,就有表结构(行和列).行代表每一行数据,列代表该行中的每个值.列上的值是 ...
- android studio 做登陆界面
先来一个最简单的 AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> &l ...
- 从源码角度分析ScheduleMaster的节点管理流程
ScheduleMaster是一个开源的分布式任务调度系统,它基于.NET Core 3.1平台构建,支持跨平台多节点部署运行. 项目主页:https://github.com/hey-hoho/Sc ...
- Simulation-计算统计-随机数生成
library('ggplot2') library('dplyr') Lecture 6 Methods for generating random numbers Goal: Use U(0, 1 ...
- rails的接口查询详解
Retrieving Objects from the Database find "find"是一种常用的数据库查询方法,在Rails中被用于从数据库中查找单个记录.它可以接收一 ...
- 笔记:C++学习之旅---引用
笔记:C++学习之旅---引用 什么是引用? 引用就是别名,引用并非对象,相反的,他只是为一个已经存在的对象所起的另外一个名字. /*引用就是别名*/ #include <iostream> ...
- Ffmpeg 视频压缩的几个关键参数
Ffmpeg的视频操作官网文档:https://ffmpeg.org/ffmpeg-filters.html#Video-Filters 视频压缩用到的参数主要为以下几个: 文件路径:-i 输入文件的 ...