python常用代码及意思_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后面也可以跟"+"、"="等

python2 输入函数: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)

不定长参数:*args(元组),**kwargs(字典,传入方式:xx=123),

解包:

当列表/元组当做实参传递的时候,如果前面有一个*,表示对其进行解包

意思是:[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)

>>> type(d)

判断一个对象是不是迭代对象: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__表示系统给的函数

_类名__私有属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值