python 常用代码
获取标签名 h1 class 是h1user
soup.find(name="h1", attrs={"class":"h1user"});
获取标签的内容
h1userSoup.string;
__str__ 使用
class Student(object):
def __init__(self, name):
self.name = name
def __str__(self):
return self.name
print(Student('Michael'))
#os.path.dirname() 用于去掉文件名,返回目录所在的路径
# os.path.join() 用于将分离的各部分组合成一个路径名
#os.path.abspath() 返回path规范化的绝对路径
import os
BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
ADMIN_DB = os.path.join(BASEDIR, 'db', 'admin')
COURSE_DB = os.path.join(BASEDIR, 'db', 'course')
以任何字符结尾
会自动在行末加上回车,如果不需回车和换行,以某个字符结尾,只需在print语句的结尾添加一个逗号”,“end="*",就可以改
变它的结束字符。
>>> for i in range(0,6):
print (i,end=':')
0:1:2:3:4:5
print 会自动在行末加上回车,如果不需回车,只需在print语句的结尾添加一个逗号”,“,就可以改变它的行为。
for i in range(0,6):
print i,
url
urllencode()将字符串等转换为URL.(from urllib.parse import urlencode)
json对象
编码:json.dumps().把一个Pyhton对象编码转换成Json字符串.
python对象
解码:json.loads().把json格式字符串解码成Python对象.
soup.select:CSS选择器
hashlib提供常见的摘要算法:MD5,SHA1
摘要算法又称哈希算法、散列算法。
它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)
hashlib.MD5().hexdigest()输出加密后的密文
sys.path.append("/*").添加当前目录下路径*
注释: 单行注释:#
多行注释:'''内容'''
python中自带换行,end='\n'.若写成end=""则不换行。
end后面也可以跟"+"、"="等
python 输入函数:raw_input
python3 输入函数:input(两者效果相同)
print(" hello "*10)(hello是要输出的内容,10是要输出的遍数)
5.互换变量值: A=100,B=200
A,B = B,A 即可A=200,B=100
6.生成随机数 import random
random.randint(x,y)生成一个大于等于x小于等于y的随机数
长度 len(xxx)
切片 name="abcdefghijkl"
name[0]=a name[-1]=l
name[0:2]=ab
name[::]--->'abcdefghijkl'
name[::2]-->'acegik'
name[::-1]-->'lkjihgfedcba'
延时 import time
time.sleep(1) 单位:秒
全局变量在函数中可以随意调用,但是不可以修改,
除非在函数内加上:global 变量名,修改后会影响全局
可变类型需要加global,不可变的不需要
函数返回多个数据有三种方式:元组(),列表[],字典{ }
排序 xxx.sort() 从小到大 xxx.sort(reverse=True) 从大到小
如果列表里面是字典,则需要用到匿名函数(lambda)
a.sort(key=lambda x:x[字典的key],reverse=True)
alist
=
[(
'2'
,
'3'
,
'10'
), (
'1'
,
'2'
,
'3'
), (
'5'
,
'6'
,
'7'
), (
'2'
,
'5'
,
'10'
), (
'2'
,
'4'
,
'10'
)]
# 多级排序,先按照第3个元素排序,然后按照第2个元素排序:
print
sorted
(alist,
cmp
=
None
, key
=
lambda
x:(
int
(x[
2
]),
int
(x[
1
])), reverse
=
False
)
解包:
当列表/元组当做实参传递的时候,如果前面有一个*,表示对其进行解包
意思是:[11,22,33]----->11,22,33
当字典当做实参传递的时候,如果前面有两个*,表示对其进行解包
意思是:{"aa":100,"bb":200}---->aa=100,bb=200
不可变数据类型:数字、字符串、元组
字典中的key只能是不可变类型
a=a+a a的地址发生变化
a+=a a的地址不变
16.调函数是堆栈、出栈的过程
当有两个函数名一样时,后者会自动覆盖前者,但不会报错.
os.listdir("目录") 获取当前目录下的所有文件的名称
19. >>> s = set([1,5,6])#set
>>> s
{1, 5, 6}
>>> d = ([2,5,8]) list
>>> d
[2, 5, 8]
>>> type(s)
<class 'set'>
>>> type(d)
<class 'list'>
判断一个对象是不是迭代对象:Interable
from collections import Iterable
>>> isinstance('abc', Iterable) # str是否可迭代
True
>>> isinstance([1,2,3], Iterable) # list是否可迭代
True
>>> isinstance(123, Iterable) # 整数是否可迭代
False
可以被next()函数调用并不断返回下一个值的对象称为迭代器:Iterator
可以使用isinstance()判断一个对象是否是Iterator对象:
>>> from collections import Iterator
>>> isinstance((x for x in range(10)), Iterator)
True
>>> isinstance([], Iterator)
False
列表生成器: [x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
还可以使用两层循环,可以生成全排列:
[m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
把一个list中所有的字符串变成小写:
L = ['Hello', 'World', 'IBM', 'Apple']
[s.lower() for s in L]
['hello', 'world', 'ibm', 'apple']
杨辉三角:
def yanghui():
L = [1]
while True:
yield L
L.append(0)
L = [L[i-1]+L[i] for i in range(len(L))]
n = 0
for t in yanghui():
print(t)
n = n + 1
if n == 10:
break
函数本身也可以赋值给变量
>>>f = abs
>>>f(-10)
10
24.把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。
from functools import reduce
多进程:from multiprocessing import Pool
GROUP_START = 1
GROUP_END = 20
if __name__ == "__main__":
groups = [x * 20 for x in range(GROUP_START, GROUP_END + 1)]
pool = Pool()
pool.map(main, groups)
26.==.判断是不是相同内容
is.判断指向的是不是同一个地址、空间。
27.__xx__表示系统给的函数
_类名__私有属性
python 常用代码的更多相关文章
- 【转载】GitHub 标星 1.2w+,超全 Python 常用代码合集,值得收藏!
本文转自逆袭的二胖,作者二胖 今天给大家介绍一个由一个国外小哥用好几年时间维护的 Python 代码合集.简单来说就是,这个程序员小哥在几年前开始保存自己写过的 Python 代码,同时把一些自己比较 ...
- python常用代码片段
目录 Python3常用 文件处理 json处理 log日志 argparse使用 INIparser Python3常用 文件处理 class BaseMethod: @staticmethod d ...
- python常用代码积累
一.文件操作 1.判断一个目录是否存在,若不存在则创建 if not os.path.isdir(new_path): os.makedirs(new_path) 2.新建一个文件 f=open(&q ...
- python常用代码、问题汇总
1.生成dataframe数据 5.读取带 ','分隔符的txt文件 4.DataFrame格式数据处理中报错 2.安装库时出现如下错误: 3.得到股票交易日数据 1.生成dataframe数据 im ...
- python常用代码
#coding=utf-8 import urllib import re def getHtml(url): page = urllib.urlopen(url) html = page.read( ...
- Python 常用 代码片段
文件名字中含有特殊字符转成空格,因为?‘’等作为文件名是非法的.以下正则表达式进行过滤转换 newname = re.sub("[\s+\.\!\/_,$%^*(+\"\')]+| ...
- Python常用代码,置顶备用!
1.jupyter notebook 设置全部行输出: # 设置全部行输出 from IPython.core.interactiveshell import InteractiveShellInte ...
- Python常用代码2
用matplotlib画图时,若设置全部行输出,会得到包括图标在内的所有输出结果. plt.show() 输出全部行,参数为“all”:输出最后一行,参数为“last_expr”
- [python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】
[python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...
随机推荐
- jlink的SWD与JTAG下载模式的对应接线方法
参考博客:http://blog.csdn.net/qq_26093511/article/details/59484249 (1)如果用jtag模式下载的话需要接线: jlink ...
- HDU 5607 graph(矩阵乘法)
题意 在一个 \(n\) 个节点 \(m\) 条边的有向图上随机游走,有 \(Q\) 个询问,每次给定一个起点 \(u\) 和步数 \(K\) ,每次回答最后停在每个节点的概率. \(1 \leq n ...
- js实现类型jq的dom加载完成
有时候我们只想在 dom 加载完成后运行 js ,而不是等所有图片加载完成.所以不需要 onload , onload 会加载图片等其他媒体.很消耗时间. 原:http://blog.csdn.net ...
- 前端面试题 | JS部分(附带答案)
目前在找工作,所以各方收集了一堆面试题.其实刷面试题的过程也能更新自己对知识的认识,所以也提醒自己多看多理解.如果对下面题目有更深理解,会实时更新.遇到新题目,也会不定时更新.希望能帮助到部分朋友- ...
- codeforces gym 101164 K Cutting 字符串hash
题意:给你两个字符串a,b,不区分大小写,将b分成三段,重新拼接,问是否能得到A: 思路:暴力枚举两个断点,然后check的时候需要字符串hash,O(1)复杂度N*N: 题目链接:传送门 #prag ...
- 使用CSS渐变
转载自:https://developer.mozilla.org/zh-CN/docs/Web/Guide/CSS/Using_CSS_gradients CSS 渐变 是在 CSS3 Image ...
- animate.css –齐全的CSS3动画库--- 学习笔记
animate.css – 齐全的CSS3动画库 学习网站: https://daneden.github.io/animate.css/ http://www.dowebok.com/98.html ...
- IIS字体 404错误
问题:最近在IIS上部署web项目的时候,发现浏览器总是报找不到woff.woff2字体的错误.导致浏览器加载字体报404错误,白白消耗了100-200毫秒的加载时间. 原因:因为服务器IIS不认SV ...
- JVM(一)
1 Java类加载器包括几种?它们之间的关系是怎么样的?双亲委派机制是什么意思?有什么好处? 启动Bootstrap类加载.扩展Extension类加载.系统System类加载. 类加载器也是Java ...
- [原][粒子特效][spark]事件action
深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html group调用action的地方: 可以看到使用action的可以是出生一次 ...