Python网络爬虫笔记(二)——10分钟Python基本语法

前言

适用于有其他语言基础的Python初学者。

一、字符串

相比于C++,java 来说,Python是真的智能。让严谨风的我一度不适应……

a = 1

rint('a = ', a, ' is ', type(a))

b = 1.5
print('b = ', b, ' is ', type(b))

c = '666'
print('c = ', c, ' is ', type(c))

运行结果:

a =  1  is  <class 'int'>
b =  1.5  is  <class 'float'>
c =  666  is  <class 'str'>

这可比auto啥的方便多!

1、切片

'''
字符串的切片:
1、索引下标从0开始
语法:a[start:end:step]
       start:开始下标
       end:结束下标+1
       step:步长值(默认为1)
'''
s = '123456789'
print(s[1])
# >>2
print(s[1:3])
# >>23
print(s[1:7:3])
# >>25

2、加转义字符

s1 = '王\n振华'
# 王
# 振华
s2 = r'王\n振华'
# 王\n振华

3、加变量

num1 = 955
num2 = 996
s3 = '我要%d,不要%d!' % (num1, num2)
print(s3)
# >>我要955,不要996!

嗯,字符串这么多就够用了…

二、循环/判断

1、判断:


d = -3
print(type(d))
if d > 5:
    d += 1
    print(d)
elif d > 0:
    d *= 2
    print(d)
else:
    d /= 2
    print(d)
print(type(d))
'''
输出:
<class 'int'>
-1.5
<class 'float'>
'''

可以看到,变量a之前还是个int,走完就成float了,渣*,啧啧。
另外:
不要忘了冒号!不要忘了冒号!!不要忘了冒号!!!

2、循环

e = [1, 2, 3, 4, 5, 6, 7]
# 两种方式
for one in e:
    print(one)
# 使用range函数生成迭代列表
for i in range(0, len(e), 2):
    print(e[i])

range(start, stop[, step])
参数说明:
start: 计数从 start 开始。默认是从 0开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0,> 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

3、for…else…
for还可以和else一起,产生奇妙的作用……(:雾

三、函数

高深的什么匿名函数啊就不说了,会最基本的就够用了。

def func(name, age, sex='男'):
    if sex == '男':
        print('我叫', name, ',年芳', age, '请多指教啊哈哈!')
    else:
        print('我叫%s,年芳%d,请来打我啊哈哈!'%(name,age))


func('王振华', 18)
func('王振华', 18, '女')
def func(name, age, sex='男'):
    if sex == '男':
        print('我叫', name, ',年芳', age, '请多指教啊哈哈!')
    else:
        print('我叫%s,年芳%d,请来打我啊哈哈!'%(name,age))


func('王振华', 18)
func('王振华', 18, '女')
'''
输出:
我叫 王振华 ,年芳 18 请多指教啊哈哈!
我叫王振华,年芳18,请来打我啊哈哈!
'''

突然发现,print中逗号拼接会有空格……

四、常用容器

常见容器有四种:
1、list列表
2、dict字典
3、tuple元组
4、set集合

l = [4, 5, 6]
print(type(l))
d = {'a': 1, 'b': 2, 'c': 3}
print(type(d))
t = (1, 3, 5)
print(type(t))
s = {1, 1, 2, 4, 6}
print(type(s))
print(s)
'''
运行结果
<class 'list'>
<class 'dict'>
<class 'tuple'>
<class 'set'>
{1, 2, 4, 6}
'''

这四种中我们主要用到了list和dict
list:

l = [4, 5, 1]
print(l)
l.append(6)  # 在列表尾添加元素
print(l)
del l[2]  # 删除指定位置元素
print(l)
l.pop(2)  # 删除指定位置元素,默认最后一个
print(l)
l.remove(4)  # 删除匹配元素
print(l)
'''
运行结果:
[4, 5, 1]
[4, 5, 1, 6]
[4, 5, 6]
[4, 5]
[5]

'''
list中的可以是str,int,甚至是list。
l = ['aa', 2, 'd', [2, 3]]
print(l)
'''
输出
['aa', 2, 'd', [2, 3]]
'''

dict:

d = {'a': 1, 'b': 2, 'c': 3}

print(d['a'])  # 访问元素
d['d'] = 4  # 增添元素
print(d['d'])
d['b'] = 5  # 修改元素
print(d['b'])
del d['c']  # 删除键 'c'
print(d)
d.clear()  # 清空字典
print(d)
'''
输出
1
4
5
{'a': 1, 'b': 5, 'd': 4}
{}

'''
dict跟c++的map差不多,注意键值不能重复。

五、文件读写

list1 = ['a', 'b', 'c']
with open(r'D:\test.txt', 'w', encoding='utf-8') as f:
    for one in list1:
        f.write(one + '\n')
'''
其中open
第一个参数:文件地址
第二个参数:方式:
    a:追加写入
    w:覆盖写入
    r:只读打开
    wb:一般用于未文本,比如写图片
'''
简单爬虫所需要的基础语法知识差不多就这些了。接下来就可以开始真正的爬虫。
发布了19 篇原创文章 · 获赞 3 · 访问量 1384

猜你喜欢

转载自blog.csdn.net/xuanhuangwendao/article/details/104023996