一 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. leetcode965

    public class Solution { List<int> list = new List<int>(); private void postTree(TreeNode ...

  2. 无法读取用户配置文件,系统自动建立Temp临时用户

    chkdsk/f 删除用户目录下的 ntuser.dat.LOG 文件,重新登陆即可. 对于新建用户的情况: 一.Default User文件夹不完整或者被删除了,导致系统无法复制新的一份.这种情况的 ...

  3. 10 python os&sys 模块

    1.os模块 os模块提供了很多允许你的程序与操作系统直接交互的功能 os模块的主要功能:处理文件和目录,系统相关,执行命令,管理进程 检验给出的路径是否是一个文件:os.path.isfile() ...

  4. iPhone launch screen,self.view.frame.size

    在工程文件中找到以下设置 "Launch Screen File"只支持iOS8以上版本,如果用之,则self.view.frame.size返回的结果为正常的当前view尺寸. ...

  5. Kafka Manager 监控

    1.安装: 依赖java环境,须首先安装java运行环境,并正确设置路径. 确保kafka已经安装,且版本合适. 修改配置文件:   kafka-manager.zkhosts="你的zoo ...

  6. 磁盘IO过高时的处理办法

    针对系统中磁盘IO负载过高的指导性操作 主要命令:echo deadline > /sys/block/sda/queue/scheduler 注:以下的内容仅是提供参考,如果磁盘IO确实比较大 ...

  7. 安装oracle后java -version命令显示 jdk version "1.3.1"的原因

    因为先装的JDK,后装了oracle,oracle的JDK配置把原来的jdk路径替换掉了. 我的电脑->属性->高级->环境变量->系统变量->PATH ,把JDK的路径 ...

  8. How to read very large text files fast

    Question Does anyone know the fastest way to read large text files (10Mb) into a string.Readln is ju ...

  9. 关于frameset与iframe的使用

    <frameset>与<body>标签同级,是不能同时存在的,<frameset>是把当前页面进行分割. frameset.html: <!DOCTYPE h ...

  10. 吴裕雄 数据挖掘与分析案例实战(12)——SVM模型的应用

    import pandas as pd # 导入第三方模块from sklearn import svmfrom sklearn import model_selectionfrom sklearn ...