Contents
21.1. 基础语法复习¶
21.1.1. 变量¶
>>> a = 4
>>> b = 5
>>> t = a
>>> a = b
>>> b = t
>>> a
5
>>> b
4
21.1.2. 字符串的加法 和 乘法¶
>>> a = "I "
>>> b = "love "
>>> c = 'python '
>>> a + b + c
'I love python '
>>> a = "word"
>>> a * 3
'wordwordword'
21.1.3. 字符串的切片和索引¶
>>> a = "I love python"
>>> a[0]
'I'
>>> a[0:5] # 0`4个索引位置
'I lov'
>>> a[-1]
'n'
>>> a[::-1] #反转字符串
'nohtyp evol I'
21.1.4. 字符串方法¶
split()方法,根据分隔符将字符串切割为列表¶
>>> a = "www.baidu.com"
>>> a.split('.')
['www', 'baidu', 'com']
replace()方法,可以将字符串中的字符进行替换¶
>>> a = "there is apples"
>>> a.replace("is","are")
'there are apples'
strip()去掉字符串两边的空格,或者根据特定字符进行去除¶
>>> a = " python is cool "
>>> a
' python is cool '
>>> a.strip()
'python is cool'
>>> a = "***python *is *good***"
>>> a.strip("*!")
'python *is *good
format()字符串格式化¶
>>> a = "{} is my love".format("python")
>>> a
'python is my love'
>>> content = input("请输入y要搜索的内容:")
>>> url_path = "https://www.pexels.com/{}".format(content)
>>> url_path
'https://www.pexels.com/book'
21.1.5. 函数¶
# 对手机号码进行隐藏,隐藏第3位到第6位
def change_number(number):
hiding_number = number.replace(number[3:7],"*"*4)
print(hiding_number)
change_number("13262662216")
132****2216
21.1.6. 判断语句¶
#!/usr/bin/env python
#-*- coding:utf8 -*-
def count_login():
passwd = input("请输入密码: ")
if passwd == "123.com":
print("输入成功!")
else:
print("输入错误!重新输入")
count_login()
count_login()
请输入密码: 12
输入错误!重新输入
请输入密码: 123.com
输入成功!
21.1.7. 循环语句¶
计算1~100的和
#!/usr/bin/env python
#-*- coding:utf8 -*-
i = 0
sum = 0
while i < 100:
i +=1
sum = sum + i
print(sum)
21.1.8. Python数据结构¶
列表¶
>>> list = ["peter","lilei","wangwu","xiaoming"]
>>> list[1]
'lilei'
>>> list[2:]
['wangwu', 'xiaoming']
>>> list[2:4]
['wangwu', 'xiaoming']
In [1]: names = ["xiaoming","wangwu","peter"]
In [2]: ages = [23,14,31]
In [3]: for name,age in zip(names,ages):
...: print(name,age)
...:
xiaoming 23
wangwu 14
peter 31
##手动将网页存到url中,然后循环依次取出并访问爬取数据
In [4]: urls = ["http://bj.xiaozhu.com/search-duanzufang-p{}-0/".format(number) for number in range(1,14)]
In [5]: for url in urls:
...: print(url)
...:
http://bj.xiaozhu.com/search-duanzufang-p1-0/
http://bj.xiaozhu.com/search-duanzufang-p2-0/
http://bj.xiaozhu.com/search-duanzufang-p3-0/
http://bj.xiaozhu.com/search-duanzufang-p4-0/
http://bj.xiaozhu.com/search-duanzufang-p5-0/
http://bj.xiaozhu.com/search-duanzufang-p6-0/
http://bj.xiaozhu.com/search-duanzufang-p7-0/
http://bj.xiaozhu.com/search-duanzufang-p8-0/
http://bj.xiaozhu.com/search-duanzufang-p9-0/
http://bj.xiaozhu.com/search-duanzufang-p10-0/
http://bj.xiaozhu.com/search-duanzufang-p11-0/
http://bj.xiaozhu.com/search-duanzufang-p12-0/
http://bj.xiaozhu.com/search-duanzufang-p13-0/
字典¶
In [9]: user_info = { "name":"hujianli",
...: "age":18,
...: "sex":"man"}
In [10]: user_info
Out[10]: {'age': 18, 'name': 'hujianli', 'sex': 'man'}
元祖和集合¶
In [11]: tuple = (1,2,3) # 元祖不可变
In [12]: list = ["xiaoming","zhangyun","xiaoming"] #集合可以去重
In [13]: set(list)
Out[13]: {'xiaoming', 'zhangyun'}
21.1.9. 文件操作¶
写文件¶
f = open("hujianli.txt","w")
f.write("hello world")
for i in range(11):
f.write(str(i)+"\n")
f.close()
读文件¶
f = open("hujianli.txt")
for i in f:
print(i)
#去掉字符串两端的空白
#print(i.strip())
f.close()
21.1.10. 面对对象¶
类的初探¶
实例属性
#!/usr/bin/env python
# -*- encoding -*-
class Bike:
compose = ['frame','wheel','pedal']
my_bike = Bike()
you_bike = Bike()
my_bike.other = "hujianli"
print(my_bike.compose)
print(my_bike.other)
print(you_bike.compose)
实例方法¶
#!/usr/bin/env python
#-*- coding:utf8 -*-
class Cat(object):
def jiao(self):
print("miao...miao....")
hu_cat = Cat()
hu_cat.jiao()
# 实例方法可以添加参数
class Cat(object):
def jiao(self,name):
print("my name is {} ,miao...miao....".format(name))
hu_cat1 = Cat()
hu_cat1.jiao("hu_cat")
魔法方法 构造函数__init__¶
创建实例的时候自动执行
class Cat(object):
def __init__(self):
self.other = "hujianli_name"
def jiao(self,name):
print("my name is {} ,miao...miao....".format(name))
hu = Cat()
print(hu.other)
类的继承¶
#!/usr/bin/env python
#-*- coding:utf8 -*-
class Bike:
compose = ['frame','wheel','pedal']
def __init__(self):
self.other = "hujianli"
def use(self,time):
print("you ride {}m".format(time*100))
class Share_bike(Bike):
def cost(self,hour):
print("you spent {}".format(hour*2))
bike = Share_bike()
print(bike.other)
bike.cost(2)
hujianli
you spent 4