Python小知识总结(一)

本文围绕Python展开,介绍了常用数据结构如元组、列表、字典、集合等,说明了它们的表示方式和可变与不可变的区别。还提及单、双、三引号的区别,在函数里设置全局变量的方法,字符串编码转换,爬虫流程及相关库,以及列表转字典、统计列表单词次数等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python 常用数据结构有哪些?
元组(tuple):元组用小括号表示()
列表(list):列表用中括号表示[ ]
字典(dic):字典用大括号表示{}
集合(set):集合用关键字set()来表示
字符串用“ ”或者‘ ’表示
数值型数据直接用本身表示即可,不需要添加任何修饰;
相互之间的区别是元组和字典中的键、字符串、整型和浮点型为不可变类型,也就是说不能对其进行修改;而列表和集合为可变类型,可以直接对其进行修改。同时因为列表和集合为可变类型,因此不能作为字典中的键。无法直接对元组进行增加、删除、修改等操作,只能查询,但可以合并两个元组生成新的元组
Python中单引号,双引号和三引号的区别
(1)单引号跟双引号的普通用法是相同的, 就是跟C++语言里面用双引号表示字符串字面量的用法一样。
(2)单引号跟双引号的区别主要体现在当用单引号包起来的字符串里包含"的时候, 不需要使用转义符(), 反过来也是一样。
(3)三引号有两种形式(""“字符串内容”"", 或者’’‘字符串内容’’’)
这两种形式的用法几乎没有区别, 但是要严格来说的话, 也是有上面那样的区别。三引号的核心用法主要体现在跨行的字符串上, 会包含两个界定符号之间的所有字符,包括看得见的, 看不见的, 如回车换行符。
如何在一个function里面设置一个全局变量
如果要给全局变量在一个函数里赋值,必须使用global语句。global VarName的表达式会告诉Python,VarName是一个全局变量,这样Python就不会在局部命名空间里寻找这个变量了。

#加global程序就ok了
def my_global():
    global x
    x=8;
my_global()
print(x)
#打印结果8

这个代码只有调用了函数,在打印才有效,否则没结果。
如果 custname 字符串的内容为 utf-8 的字符,如何将 custname 的内容转为 gb18030 的字符串?

custname = custname.decode(utf-8).encode(gb18030)

介绍一下爬虫流程,涉及到的库
爬虫的五个步骤:

1. 确定需求(人)
2. 确定资源(人)
3. 通过URL获取网站的返回信息(爬虫)(requests, 输入是URL, 输出:HTML, JSON,图片。。。,时间:2天)
4. 定位数据(爬虫)(re,XPATH,BeautifulSoup, 输入:HTML, JSON, 输出:具体定位到的数据,时间:四天)
5. 存储数据(程序)(pymysql, pymongo 输入:具体定位到的数据, 输出:存储成功与否,时间:0天)

假设如下两个list: a=[‘a’,‘b’,‘c’,‘d’,‘e’] , b=[1,2,3,4,5] ,将a中的元素作为key,b中的元素作为value,将a,b和并为字典

def dict_a_b(list_a,list_b):
    if len(list_a) != len(list_b):
        return None
    if len(set(list_a)) < len(list_a):
        return None
    dict_a_b = dict(zip(list_a, list_b))
    return dict_a_b
if __name__ == '__main__':
    a = ['a', 'b', 'c', 'd', 'e']
    b = [1, 2, 3, 4, 5]
    dict_a_b = dict_a_b(a,b)
    print(dict_a_b)

统计如下列表中的单词及其出现次数 a=[‘apple’,‘banana’,‘apple’,‘tomato’,‘orange’,‘apple’,‘banana’,‘watermeton’]

def count_a(list_a):
    dict_a = {}
    for i in list_a:
        if i in dict_a:
            dict_a[i] += 1
        else:
            dict_a[i] = 1

    return dict_a
if __name__ == '__main__':
    a = ['apple', 'banana', 'apple', 'tomato', 'orange', 'apple', 'banana', 'watermeton']
    a = count_a(a)
    print(a)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZYD@LHQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值