一 join方法

 主要是做字符串的拼接:join后面跟的类型必须是要可迭代得到对象

 for循环的对象是可迭代对象

# result = "".join(li)
# print(result) msg = ""
is_first = True
for item in li:
if is_first:
tmp = item
is_first =False
else:
tmp = "_" + item # _alex
msg += tmp
print(msg)

二 break  和 contionue在for循环中也可以使用,用法和while循环一样

  break还可以退出当前的循环,回到上一级的循环

 for i in range(1,10):
print(i)
for i in range(10,20):
print(i) for i in range(1,10):
print(i)
break
for i in range(10,20):
print(i)
for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break
break for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break flag = False
for i in range(1,10):
print(i)
if flag:
break
for i in range(10,20):
print(i)
flag = True
break ==================
for i in range(1,10):
print(i)
continue
for i in range(10,20):
print(i) for i in range(1,10):
print(i)
for i in range(10,20):
continue
print(i)
===================
for i in range(1,10):
print(i) # 1,2
for j in range(i,10): # 2,9
print(j) for i in range(1,10):
print(i)
for j in range(10,i,-1):
print(j)

三 各种数据类型外部,都不能加上逗号,不然都会变成元组的类型,带上逗号不能在值外部得首位,不然就会报错。

# a=1,
# print(a,type(a)) # a='fang',
# print(a,type(a)) # a=1,2,3,4,5,
# print(a,type(a))
# # b='wa','sa',
# print(b,type(b)) # c=[1,2],[2,4]
# print(c,type(c))
# # d={'fang':18},{'jie':19}
# print(d,type(d))

四 python2 和python3中range的区别

 在python2 中range是直接在内存中直接就会产生数据,所以浪费内存,但是为了节省内存,python2中的xrange就会比较好一点,xrange是不会直接产生数据的,而是在你调用的时候才会产生数据,属于未知的类型(生成器),而且还会判断数据产生后得到一段时间假如没有被调用,就会自动的删除。

 而在python3 中,将range优化,与python2中的xrange功能是一样的。

# py35
# range() = py27 xrange()
# 应用
# for num in range(1,101):
# if num == 77:
# continue
# print(num)
# 2. 步长(默认1)
# for num in range(1,101,1):
# print(num) # for num in range(100,0,-1):
# print(num)
# 应用
# li = [11,22,33,44,55,66]
# for num in range(0,len(li)):
# print(num)

五 预备知识

 只要代码执行放在内存,就可以直接调用

# if 1 == 1:
# name = '123'
# print(name) # 123 # if 1!=1:
# name = '123'
# print(name) # None

 如果变量未创建(未定义)就会报错

六 占位符还可以赋值变量使用

		tpl = "我叫%sfdf"
name = tpl %('骑兵',)
name = tpl %('步兵',)

七 判断某个值是否与字典内的某个值相同

# d={
# 'k1':'v11',
# 'k2':'v2'
# } # val='v1'
# for i in d.values():
# if val == i:
# print(1)

练习:

dic = {'k1': "v1", 'k2': 'v2'}

data = dic.get('kk1')  # None

dic['k1'] = "vv1"
val = "v1" in dic # False
print(val) # 出错点
# 题:dic = {'k1':"v1",'k2':'v2'}把key="k1",键值对删除
# del dic['k1'] # 题:dic = {'u1':"v1",'k2':'v2','k3':'v3'}把key中存在k,键值对删除
# dic = {'u1': "v1", 'k2': 'v2', 'k3': 'v3'}
# 不要在循环当前字典的过程中,修改当前字典大小 # 错误
# for key in dic:
# if 'k' in key:
# del dic[key] # 正确方式
# dic_key_list = []
# for key in dic:
# dic_key_list.append(key)
#
# for row in dic_key_list:
# if 'k' in row:
# del dic[row]
# print(dic)

八 删除列表时会影响列表的长度,从而使取得索引只有影响

 练习:删除列表基数索引所对应的值

1. 索引为奇数值,删除
# 删除列表元素时,会影响列表长度,从而使得索引取值时,容易出现错误。 li = [11,22,33,44,66] li = [11, 22, 33, 44, 66] # 0
# 索引为奇数值,删除
for i in range(0,len(li)): # 4,0
del li[i]
print(li) # 解决方案一:
# li = [11, 22, 33, 44, 66] # 0
# new_list = []
# # 索引为奇数值,删除
# for i in range(0,len(li)):
# if i%2 == 0:
# new_list.append(li[i])
# li = new_list
# print(li) # 解决方案二:
# li = [11, 22, 33, 44, 66] # 0
# # 索引为奇数值,删除
# for i in range(len(li)-1,-1,-1): # 4,0
# if i%2 == 1:
# del li[i]
# print(li) 2. 切片+步长
li = [11, 22, 33, 44, 66]
del li[0:4]
del li[0:4:2]
print(li)

九 数据类型之间的转换

1 数字和字符串的转换

#数字转成字符串
# a=123
# a=str(a)
# print(a,type(a))
#
# #字符串转换成数字
# a='234'
# a=int(a)
# print(a,type(a))

2 列表和元祖的转换

## 列表转换元组
# a=['as','afs']
# a=tuple(a)
# print(a,type(a)) # #元组转换成列表
# a=('sa','gdf')
# a=list(a)
# print(a,type(a))

3 字符串和列表,还有元组的转换

##字符串转换成列表
# a='fsfsaasaa'
# a=list(a)
# print(a,type(a)) ##字符串转换成
# a='fsfsaasaa'
# a=tuple(a)
# print(a,type(a)) ####注释:在字符串转换成列表或者元祖时,会以索引取值,从第一个到最后一个,每取一个索引值,就会成为列表或者元组里面的元素。 ##列表转换字符串
# a=['sd','adf']
# a=str(a)
# print(a,type(a))
# ##元组转换字符串
# a=('sd','adf')
# a=str(a)
# print(a,type(a)) # ####注释:在列表或者元祖转换字符串的时候,会将列表或者元组的整体转换成字符串 # a=['sd','adf']
# print(''.join(a),type(''.join(a)))
# ##join的转换方法:列表转换字符串
# a=('sd','adf')
# print(''.join(a),type(''.join(a)))
# ##join的转换方法:元组转换字符串

十 每个数据相对应的布尔值

	- True,False

	- False: 0,None,"",{},[],()

python之零碎知识的更多相关文章

  1. 【Python】 零碎知识积累 II

    [Python] 零碎知识积累 II ■ 函数的参数默认值在函数定义时确定并保存在内存中,调用函数时不会在内存中新开辟一块空间然后用参数默认值重新赋值,而是单纯地引用这个参数原来的地址.这就带来了一个 ...

  2. 【Python】 零碎知识积累 I

    大概也是出于初高中时学化学,积累各种反应和物质的习惯,还有大学学各种外语时一看见不认识的词就马上记下来的习惯,形成了一种能记一点是一点的零碎知识记录的癖好.这篇文章就是专门拿来记录这些零碎知识的,没事 ...

  3. python的零碎知识

    1.Python代码操作git 安装 pip3 install gitpython 操作git import os from git.repo import Repo # gitpython def ...

  4. python数组相关知识

    1.np中的reshape函数,可以把矩阵重新划分成m行n列. arange(n)可以把 [0,n-1]装入数组中,一定要注意的是img.reshape()并不会改变原来的数组,所以需要另外新建一个数 ...

  5. Python 编程核心知识体系(REF)

    Python 编程核心知识体系: https://woaielf.github.io/2017/06/13/python3-all/ https://woaielf.github.io/page2/

  6. python基础----基础知识介绍

    一  编程语言的划分       编译型:将代码一次性全部编译成二进制,然后运行. 缺点:开发效率低,不能跨平台(windows与linux) 优点:执行效率高 代表语言:c语言 解释型:当程序开始运 ...

  7. 简述Python入门小知识

    如今的Python开发工程师很受企业和朋友们的青睐,现在学习Python开发的小伙伴也很多,本篇文章就和大家探讨一下Python入门小知识都有哪些. 扣丁学堂简述Python入门小知识Python培训 ...

  8. Python数据挖掘——基础知识

    Python数据挖掘——基础知识 数据挖掘又称从数据中 挖掘知识.知识提取.数据/模式分析 即为:从数据中发现知识的过程 1.数据清理 (消除噪声,删除不一致数据) 2.数据集成 (多种数据源 组合在 ...

  9. python - 那些零碎的知识点

    python - 那些零碎的知识点 一. 字符串格式化 1. "旧式字符串解析(%操作符)" 'Hello, %s' % name "Hello, Bob" ' ...

随机推荐

  1. json和java bean的相互转换(使用fastjson)

    <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifac ...

  2. VBA 操作 VBE

    Introduction You can write code in VBA that reads or modifies other VBA projects, modules, or proced ...

  3. Window Mysql 5.7.18安装

    1:下载地址 https://dev.mysql.com/downloads/mysql/ 点击Community , 然后点击Community Server 位置, 下载 安装包 2: 配置环境变 ...

  4. 在mfc中picture控件中显示Mat图片<转>

    void ShowMatImgToWnd(CWnd* pWnd, cv::Mat img) { if(img.empty()) return; CRect drect; pWnd->GetCli ...

  5. mysql改数据库名称

    第一种方法: 1.创建需要改成新名的数据库.2.mysqldum 导出要改名的数据库3.删除原来的旧库(确定是否真的需要)当然这种方法虽然安全,但是如果数据量大,会比较耗时,哎,当时连这种方法都没有想 ...

  6. (2)shiro角色资源权限

    一般在web系统权限设计中,一般分为三个维度,用户,角色,资源,一个用户可以拥有多个角色,比如说可以是老师,也可以是班主任,一个角色也可以拥有多个资源. 比如老师同时拥有查看班级学生和批改作业的资源, ...

  7. 迷你MVVM框架 avalonjs 1.3.7发布

    又到每个月的15号了,现在avalon已经固定在每个月的15号发布新版本.这次发布又带来许多新特性,让大家写码更加轻松,借助于"操作数据即操作DOM"的核心理念与双向绑定机制,现在 ...

  8. neo4j 学习-2

    Neo4j 查询例句 MATCH (john {name: 'John'})-[:friend]->()-[:friend]->(fof) RETURN john.name, fof.na ...

  9. 在SQL Server中使用CLR调用.NET方法

    介绍    我们一起来做个示例,在.NET中新建一个类,并在这个类里新建一个方法,然后在SQL Server中调用这个方法.按照微软所述,通过宿主 Microsoft .NET Framework 2 ...

  10. maven 的聚合