一、基本数据类型

1、整型 int 就是整数

 

2、浮点型 float 就是小数

 

 

3、字符串

3.1、加了单引号、双引号、多引号的字符就认为是字符串

单引号和双引号没有什么区别,多引号用于多行

 

3.2、字符常用的方法:

字符拼接 用 "+" 号

 

strip():去掉字符串首尾的指定字符(不传参默认为空格)

lstrip():去掉字符串左边的指定字符(不传参默认为空格)

 

lower:转换成小写

upper:转换成大写

 

startswith,endswith:判断字符串以什么开始和以什么结束

 

format 格式化函数

接受不限个参数,位置可以不按顺序,也可以接受指定参数

 

split 字符串分割

join 连接字符串

 

replace 替换

 

find 查找子串第一次在母串中出现的位置,可以自己指定位置范围来搜查,找不到返回-1

 

count 计算出子串在母串中出现的次数,默认是在整个母串中查找

 

isdigit:判断是否为整型

isdecimal:判断是否为十进制数

isnumeric:可以判断中文数字和罗马数字

 

 

4、数组(list)

4.1、创建

 

 

4.2、增加

insert()插入

append()追加

extend()扩展

 

4.3、修改

 

4.4、删除

 

 

4.5、其他常用方法

index() 查找列表中的索引

count() 统计列表中指定字符出现的次数

reverse() 列表反转

sort() 排序

 

 

5、元组(tuple)对比列表来说,元组不可变

 

创建

 

查找

 

 

 

6、字典(dict)

创建

 

增加/修改;如果键在,则修改;如果键不在,则增加一个键

 

删除

info.pop('age')  # 根据键删除某一元素 d={'Michael': 95, 'Tracy': 85}

info.popitem()  # 随机删除

info.clear()  # {}

 

查询

dic['key'] #返回字典中key对应的值,若key不存在字典中,则报错; dic.get(key, default = None)#返回字典中key对应的值,若key不存在字典中,则返回default的值(default默认为None) 'key' in dic #若存在则返回True,没有则返回False dic.keys() 返回一个包含字典所有KEY的列表; dic.values() 返回一个包含字典所有value的列表; dic.items() 返回一个包含所有(键,值)元组的列表;

 

 

 

7、集合(set)

7.1、集合的特点

1、元素不可变

2、天生去重,在集合里没办法存重复的元素

3、无序,

 

7.2、创建、增删查

 

7.3、集合的关系运算

s_1024 = {"佩奇","老男孩","海峰","马JJ","老村长","黑姑娘","Alex"}

s_pornhub = {"Alex","Egon","Rain","马JJ","Nick","Jack"}

print(s_1024 & s_pornhub) # 交集, elements in both set

print(s_1024.intersection(s_pornhub)) # 交集

print(s_1024 | s_pornhub) # 并集 or 合集

print((s_1024.union(s_pornhub))) # 并集

print(s_1024 - s_pornhub) # 差集 , only in 1024

print(s_pornhub - s_1024) # 差集, only in pornhub

print(s_1024.difference(s_pornhub)) # 差集

print(s_1024 ^ s_pornhub) # 对称差集, 把脚踩2只船的人T出去

print(s_1024.symmetric_difference(s_pornhub)) #对称差集

 

 

二、流程控制

1、if else 分支判断

单分支

if 条件: 满足条件后要执行的代码

 

双分支

if 条件: 满足条件执行代码 else: if条件不满足就走这段

 

多分支

if 条件: 满足条件执行代码 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个 else: 上面所有的条件不满足就走这段

 

 

2、for 循环

遍历序列的项目,比如列表、字符串等

 

for else:

for 不是通过 break 跳出而中断的的情况下执行else

 

 

3、while 循环

while 条件: 执行代码...

当条件满足的时候执行代码

 

三、深copy和浅copy

直接赋值:其实就是对象的引用(别名)。

浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。

深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。

 

浅拷贝实例:

 

深拷贝实例:

直观的看,深copy比浅copy复制的更深层次。浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝指拷贝数据集合的所有层。

应用举例:

https://www.cnblogs.com/zhuifeng-mayi/p/9179647.html

python基础1--基本数据类型+流程控制的更多相关文章

  1. python基础(3)---流程控制

    流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...

  2. python基础02—运算符与流程控制

    运算符与流程控制 运算符 赋值运算 用'='表示,'='的左边只能是变量 算术运算 +.-.*:加.减.乘 /:除法运算,运算结果为浮点数 //:除法运算,运算结果为整数(商) %:求余 **:求幂 ...

  3. Python基础(三)--流程控制之if、while、for,break与continue

    一.流程控制之if……else…… if语句是指编程语言中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一 if 条件1: 缩进的代码块 elif 条件2: 缩进的代码 ...

  4. Python基础:十一、流程控制(if语句、while循环)

    一.流程控制——if循环 1.第一种语法: if条件: #引号是将条件与结果分开 结果1 #四个空格,或者一个tab键,这个是告诉程序满足条件的话,运行这个结果 结果2 #如果条件是真(True)执行 ...

  5. python 基础 2.2 if流程控制(二)

    一. if  else   1.逻辑值(bool)包含了两个值: ----True:表示非空的值,比如:string ,tuple,list,set,dictonary,所有非空的序列. -----F ...

  6. python 基础 2.1 if 流程控制(一)

    一.if  else 1.if 语句     if expression:   //注意if后有冒号,必须有        statement(s)     //相对于if缩进4个空格 注:pytho ...

  7. Java04-Java语法基础(三)流程控制

    Java04-Java语法基础(三)流程控制 一.数据类型的转换 1.自动转换:在赋值运算中,占字节数大的类型会自动向字节小的类型转换 double d1 = 3.14; int t1 = d1; 2 ...

  8. 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结

    053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...

  9. 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序

    052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...

随机推荐

  1. Metasploit学习笔记——网络服务渗透攻击

    1.内存攻防技术 1.1缓冲区溢出漏洞机理 1.2栈溢出利用机理 1.3缓冲区溢出利用的限制条件 2.网络服务渗透攻击面 3. Windows服务渗透攻击实战案例——MS08-067安全漏洞 示例代码 ...

  2. XE10开发的APP对于苹果IPV6上架要求的处理

    1.服务器必须使用域名.不能使用IP地址2.Indy的话,域名加[]3.DataSnap的话,Params.Values['CommunicationIPVersion'] :='IP_IPv6';4 ...

  3. [题解] LuoguP5666 树的重心

    这个题......确实是CSPNOIP题qwq 感觉猜到一个性质就差不多了,首先,对于一棵树,随便拎一个节点\(rt\)当根节点,那么他的重心一定在\(rt\)的重儿子里,进一步的,可以发现重心一定在 ...

  4. 六、Vue-Router:基础路由处理、路由提取成单独文件、路由嵌套、路由传参数、路由高亮、html5的history使用

    一.vue-router的安装 官网文档 [官网]:https://cn.vuejs.org/v2/guide/routing.html [router文档]:https://router.vuejs ...

  5. 51nod 1206:Picture 求覆盖周长

    1206 Picture 题目来源: IOI 1998 基准时间限制:2 秒 空间限制:131072 KB 分值: 160 难度:6级算法题  收藏  关注 给出平面上的N个矩形(矩形的边平行于X轴和 ...

  6. 文本编辑器vim/vi——模式切换及输入模式

    vim一共有三种模式:命令模式.输入模式.末行模式 要从命令模式切换到输入模式:a,i,o a——append 属于在后面追加内容:i——insert 属于插入,在前面插入内容:o——other 属于 ...

  7. objectarx 批量倒角

    这个插件支持AcDbPolyline的倒角,封闭的和没封闭的都可以.刚开始做的时候,发现倒一个角借助云幽课堂里的代码就可以做,后来做一条从左开始画的非封闭的多段线,发现向上凹和向下凹的角不能同时被倒, ...

  8. 【java】【反射】反射实现判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更

    java的反射实现: 判断发生了修改操作,判断两个对象是否发生属性值的变更,判断两个List集合内对象的属性值是否发生变更 今日份代码: package com.sxd.streamTest; imp ...

  9. windows中git输错密码后不能修改问题

    坑位 当使用git做代码管理的时候,如果仓库地址地选用的是https,在初始拉取代码时,需要输入账号和密码,如果不小心输错了,后续一直会验证失败,无法再重新更正账号信息 Why 因为git为了不让你每 ...

  10. 开源DDD设计模式框架YMNNetCoreFrameWork第五篇-Swagger增加权限认证

    配置文件services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Version = " ...