Python使用笔记

1 Python3判断字符串是否为float类型、int类型

# 判断字符串是否为float类型
if isinstance(str,float):
   print(true)
else:
   pritn(false)
   
# 判断字符串是否为int类型
if isinstance(str,int):
   print(true)
else:
   pritn(false)

2 python同时遍历数组的索引和值

参考链接

for idx,val in enumerate(dish_ids_set):
    print(idx,val)

...     
0 177471495
1 338952204
2 398327832
3 398327833
4 270925856
5 398327846
6 398327851

3 Python列表去重

参考链接

# 方法一: 使用内置set方法来去重
list1 = [2, 1, 3, 4, 1]
list2 = list(set(lst1))
print(list2)

[1, 2, 3, 4]
# 方法二: 使用字典中fromkeys()的方法来去重
list1 = [2, 1, 3, 4, 1]
list2 = {}.fromkeys(lst1).keys()
print(list2)
dict_keys([2, 1, 3, 4])

# 方法三: 使用常规方法来去重

>>> lst1 = [2, 1, 3, 4, 1]
>>> temp = []
>>> for item in lst1:
	    if not item in temp:
		    temp.append(item)	
>>> print(temp)
[2, 1, 3, 4]

4 Python+MongDB + 数据处理

4.1 pymongo查询字段存在或者不存在使用正则或者exsits

m = db[collName].find({"s": None}).count()
n = db[collName].find({"s": {'$regex': ".*"}}).count()
k = db[collName].find({"si": None}).count()
z = db[collName].find({"si": {'$exists': True}}).count()

# 不存在用None判断就可以了

4.2 Pandas数据分析和预处理

df=df.drop_duplicates() #去除重复
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)

# 参数解释:
# subset: 列名,默认所有的列
# keep: 是否保留{‘first’, ‘last’, False},keep= 'first' 表示去重时每组重复数据保留第一条数据,其余数据丢弃; keep='last' 表示去重时每组重复数据保留最后一条数据,其余数据丢弃;keep=False 表示去重时每组重复数据全部丢弃,不保留
# inplace: 是否替换{False, True},inplace=False表示去重之后不覆盖原表格数据,inplace=True表示去重之后原表格数据被覆盖

df = df.sort_values(by=['site', 'country', 'date']) #排序

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.3 Pandas数据分析和预处理

在这里插入图片描述

5 net start mongodb 提示:发生系统错误 5,拒绝访问。

解决办法:

右键cmd,选择以管理员身份运行即可。

6 【python】如何去掉使用BeautifulSoup读取html出现的警告UserWarning: You provided Unicode markup but also provided a value for from_encoding

  • 问题描述

如果我们这样读取html页面

soup= BeautifulSoup(rsp.text,‘html.parser’,from_encoding=‘utf-8’) # 粗体部分多余了

就会出现下面的警告:

UserWarning: You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.
warnings.warn(“You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.”)

当然这警告不影响程序运行,但是控制台输出非必要信息也影响视线。

  • 问题原因

出现这问题的原因是python3 缺省的编码是unicode, 再在from_encoding设置为utf8就多余了, 会被忽视,然后系统给出警告信息。

  • 问题解决

解决方法也容易,去掉“from_encoding=“utf-8””这一个好了,如下所示:

soup= BeautifulSoup(rsp.text,‘html.parser’)
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值