发布于2019-08-07 14:55 阅读(981) 评论(0) 点赞(3) 收藏(2)
if __name__ == "__main__":
main()
https://blog.csdn.net/yjk13703623757/article/details/77918633
name = "konichan"
print("my id is %s",name)
print("my id is %s" % name)
结果是my id is %s konichan
以及my id is konichan
注意逗号的作用(相当于加号),name并不是参数。
for _ in range(n):
(注意还有个冒号哈哈哈)
就相当于从0开始循环到n
局部变量不会被全局的影响到
ist.append(200)
在列表最后附加
list.insert (1, 400)
在第一个数后面镶嵌
list += [1000, 2000]
在列表后面附加两个数
list.remove(3)
去3这个元素
list.title(), end=' '
所有单词都是以大写开始,直到遇到空格才结束,均为小写见istitle()
list2 = sorted(list1)
按照字母表排序
list3 = sorted(list1, reverse=True)
反过来
list4 = sorted(list1, key=len)
按照字长
元组中的元素是无法修改的 list_tuple = tuple(list)
集合跟数学上的集合是一致的,不允许有重复元素,而且可以进行交集、并集、差集等运算。
set1.add(4)
字典是另一种可变容器模型,类似于我们生活中使用的字典,它可以存储任意类型对象,与列表、集合不同的是,字典的每个元素都是由一个键和一个值组成的“键值对”,键和值通过冒号分开。
scores = {'骆昊': 95, '白元芳': 78, '狄仁杰': 82}
print(scores.popitem())
删除最后的
print(scores.pop('骆昊', 100))
循环相关
while True
语句中一定要有结束该循环的break语句,否则会一直循环下去的,while是逻辑判断
continue
语句跳出本次循环,而break跳出整个循环。
continue
语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环,永不歇菜。
中括号 python—索引与切片总结(每次看到中括号就很迷惑,其实这是多维的切片)
切片(Slice)—重点!!
一维切片一般的就是[开始:结束:步长]
(若是高维数组,则该切片从高维的进行)
List[0:3]
取出list中0、1、2的对象,不包括边界值这是和索引最大的不同,切勿搞混
推荐参考的博客 https://www.cnblogs.com/summer1019/p/10567831.html
二维切片的可以这么理解(加上逗号就变成二维的切片操作了):[ [ 行的 : 切片 ] , [ 列的 : 切片 ] ]
→ x轴方向(最基础的一个向量)是一维
[ : , : 1 ]
只要第一列 [ : , 1 ]
把第二列搞成一行的东西
[ : , :-1]
这是切片啊,只要-1列前面的,-1所在的是不要的
假设b是三行两列的数组,b[1]表示第二行的所有元素;b[1:]表示除去第一行的元素,显示后面的所有行元素;b[:1]是除去第一列后面的所有的行;b[:,0]提取第一列的所有元素;如果是b是只有一行的话,b[1]就是第二个元素
下面是这是来自runoob的截图
扩展切片 切片的第三个参数,
当第三个参数为正的时候,是正向切片,参数为负的时候,是反向切片;前面两个不存在参数,这一个就会变成步长
拷贝忍者可以进行copy的操作,浅拷贝,会建立新的内存
甚至还可以修改单个元素,以及增加某些元素a[3:3] = ['A','B','C']
(就会在3这个位置增加)
OS
for (root, dirs, files) in walk(roots)
历遍输入所在的所有相对路径
os.path.join( , )
粘合路径,不需要在用什么str粘合啊这么麻烦
多进程—进程是线程的容器,不存在没有线程的进程的
在上面的代码中,我们通过Process
类创建了进程对象,通过target
参数我们传入一个函数来表示进程启动后要执行的代码,后面的args
是一个元组,它代表了传递给函数的参数。Process
对象的start
方法用来启动进程,而join
方法表示等待进程执行结束。运行上面的代码可以明显发现两个下载任务“同时”启动了,而且程序的执行时间将大大缩短,不再是两个任务的时间总和。下面是程序的一次执行结果。
#来自runoob的例子,把目标函数/进程作为目标
from multiprocessing import Process
from os import getpid
from random import randint
from time import time, sleep
def download_task(filename):
time_to_download = randint(5, 10)
sleep(time_to_download)
print('%s下载完成! 耗费了%d秒' % (filename, time_to_download))
def main():
start = time()
p1 = Process(target=download_task, args=('Python从入门到住院.pdf', ))
p1.start()
p2 = Process(target=download_task, args=('Peking Hot.avi', ))
p2.start()
p1.join() # str.join(sequence) -->sequence -- 要连接的元素序列。
p2.join()
end = time()
print('总共耗费了%.2f秒.' % (end - start))
if __name__ == '__main__':
main()
Queue
类可以被多个进程共享的队列乱七八糟的自带函数
if x is not None
和if not x is None
意思为判断变量是否为NONE,None,False,0,空列表[],空字典{},空元祖(),都相当于false
item()
把字典中每对key和value组成一个元组,并把这些元组放在列表中返回
同时还可以将字典的 key 和 value 组成一个新的列表:for k,v in d.items():
result.append(k)
result.append(v)
NaN(Not a Number,非数)
time.sleep(t)
t是延迟的时间
tqdm 进度条模块
isinstance() 与 type() 区别:
isinstance() 会认为子类是一种父类类型,考虑继承关系。
type() 不会认为子类是一种父类类型,不考虑继承关系。
如果要判断两个类型是否相同推荐使用 isinstance(),返回true or false。
parser.add_argument('-c', action='store_true', default=false)
action就是true default就是false
lambda 简单理解就是自定义的函数 https://blog.csdn.net/zjuxsl/article/details/79437563
random.seed() 可以固定随机数,如果seed参数每次都一样,那么离它最近的random 函数(也就是接下来将)产生的随机数将是固定的
assert expression [, arguments]
表达式后面接,'sentence'
表示对表达式的说明,出错的话就会出现Asserterror:sentence的报错
strip()函数,删除字符的函数
https://www.cnblogs.com/itdyb/p/5046472.html
read()、readline()和readlines()三者间的区别
https://blog.csdn.net/qq_30868235/article/details/80580259
面向对象的编程
什么是class?就可以理解成在一个内存的区域内,这个区域内管理着很多方法,这些方法就是不同的函数。那为什么要这样写呢,是因为当你函数多了,变量也多了,为了便于管理,就把他们放到不同的区域。(_function表示只能在class中使用的函数,不加“ _ ”表示可以在class之外可以调用的函数)
super().init() — 子类构造函数调用super().init() https://blog.csdn.net/paopaohll/article/details/83063349
作者:我下面给你吃
链接:https://www.pythonheidong.com/blog/article/11405/1c492d45df59cacf2a6d/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!