python亲和数_用 Python 分析了 5 万条相亲数据,告诉你男女相亲背后的秘密

article/2025/9/8 10:12:23

作者| 叶庭云    责编 | 张文

来源 | 转载自修炼 Python(ID:yetingyun_python)

7056357c587578e9dffbccdf97e57da6.png

前言

数据来源:https://www.zhenai.com/zhenghun/

本文利用 Python 分析了按城市寻找所有地区的征婚信息,看看相亲男女的画像。

81a6d7bb2662274f658b6e4030e8a5d1.png

b988fc9807b5c89ecd74c3346f2e59ee.png

数据查看和预处理

导入用到的库

import pandas as pd

import re

读取数据,查看前 5 行

df = pd.read_excel('marriage.xlsx')

df.head()

结果如下:

3a4d337be6dcd36bbce2947056b023e3.png

查看索引、数据类型和内存信息

df.info()

8d091b904d4e9e7729ed7850f0544423.png

可以看到数据都没有缺失值。

获取到的数据里,居住地是各地区的,为了便于分析,需要处理成省级行政区,学历/月薪那一列数据,有些是月薪,有些是学历,可以分别处理成两列数据,是学历的,提取出学历层次,月薪标记为 “未知”;是月薪的,提取出月薪并计算,学历标记为 “未知”。

ebc2e2629a31107c5790a4a84c303389.png

# 获取34个省级行政区域,包括23个省,5个自治区,4个直辖市,2个特别行政区的名称

withopen('地区.txt', 'r', encoding='utf-8') as f:

area = f.read().split('\n')

print(area)

print(len(area))

结果如下:

['北京', '上海', '天津', '重庆', '黑龙江', '吉林', '辽宁', '内蒙古', '河北', '新疆', '甘肃', '青海', '陕西', '宁夏', '河南', '山东', '山西', '安徽', '湖北', '湖南', '江苏', '四川', '贵州', '云南', '广西', '西藏', '浙江', '江西', '广东', '福建', '台湾', '海南', '香港', '澳门']

34

areas_list = []

for i in df['居住地']:

for j in area:

in i:

areas_list.append(j)

break

else:

areas_list.append('未知')

df['居住地'] = areas_list

df.head()

结果如下:

c4eb91d40a97db5523b5039b3e80f105.png

withopen('学历.txt', 'r', encoding='utf-8') as fp:

edu = fp.read().split('\n')

print(edu)

结果如下:

['博士', '硕士', '本科', '大专', '中专', '高中', '初中', '小学']

salary_list = []

edu_list = []

for item in df['学历/月薪']:

if'元' in item: # 这一列的数据是表达月薪的话 计算

data = re.findall('\d+', item)

data = [int(x) for x in data]

salary = int(sum(data) / len(data)) # 取整

salary_list.append(salary)

edu_list.append('未知')

else:

salary_list.append('未知')

for e in edu:

if e in item:

edu_list.append(e)

break

else:

edu_list.append('未知')

print(len(edu_list))

print(len(salary_list))

df['学历'] = edu_list

df['月薪'] = salary_list

df.head()

结果如下:

4c3a448cd7e725d637a76b9b384e101e.png

这时候数据处理好了,可以删掉学历/月薪这一列,再重新保存到Excel。

del df['学历/月薪']

df

e6b1a88fcc25240afd7a945b0d8a7d40.png

df.to_excel('处理后数据.xlsx',index=False)

b40030e86942c35f349cc60c1c91a64c.png

数据分析

相亲男女占比情况如何?

# -*- coding: UTF-8 -*-

"""

@File :男女占比情况.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import collections

from pyecharts.charts import Pie

from pyecharts import options as opts

from pyecharts.globals import ThemeType, CurrentConfig

# 引用本地js资源渲染

CurrentConfig.ONLINE_HOST = 'D:/python/pyecharts-assets-master/assets/'

# 提取数据

df = pd.read_excel('处理后数据.xlsx')

gender = list(df['性别'])

# 统计男女人数

gender_count = collections.Counter(gender).most_common()

gender_count = [(k, v) for k, v in gender_count]

pie = Pie(init_opts=opts.InitOpts(theme=ThemeType.MACARONS))

# 富文本效果 环图

pie.add('性别', data_pair=gender_count, radius=["40%", "55%"],

label_opts=opts.LabelOpts(

position="outside",

formatter="{a|{a}}{abg|}\n{hr|}\n {b|{b}: }{c} {per|{d}%} ",

background_color="#eee",

border_color="#aaa",

border_width=1,

border_radius=4,

rich={

"a": {"color": "#999", "lineHeight": 22, "align": "center"},

"abg": {

"backgroundColor": "#e3e3e3",

"width": "100%",

"align": "right",

"height": 22,

"borderRadius": [4, 4, , ],

},

"hr": {

"borderColor": "#aaa",

"width": "100%",

"borderWidth": 0.5,

"height": ,

},

"b": {"fontSize": 16, "lineHeight": 33},

"per": {

"color": "#eee",

"backgroundColor": "#334455",

"padding": [2, 4],

"borderRadius": 2,

},

},

),)

pie.set_global_opts(title_opts=opts.TitleOpts(title='相亲男女占比情况'))

pie.set_colors(['red', 'blue']) # 设置颜色

pie.render('男女占比情况.html')

结果如下:

e3584b87993b689b4a60a4ecf9f09e50.gif

相亲男女中男士有 25910 人,占比 45.72%;女士有 30767 人,占比 54.28%。参加相亲人数中女士多于男士。

相亲男女年龄分布?

# -*- coding: UTF-8 -*-

"""

@File :年龄分布.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import collections

from pyecharts.charts import Bar

from pyecharts.globals import ThemeType, CurrentConfig

from pyecharts import options as opts

CurrentConfig.ONLINE_HOST = 'D:/python/pyecharts-assets-master/assets/'

df = pd.read_excel('处理后数据.xlsx')

age = list(df['年龄'])

age_count = collections.Counter(age).most_common()

# 按年龄排序

age_count.sort(key=lambda x: x[])

age = [x[] for x in age_count]

nums = [y[1] for y in age_count]

# print(age_count)

bar = Bar(init_opts=opts.InitOpts(theme=ThemeType.MACARONS))

bar.add_xaxis(age)

bar.add_yaxis('人数', nums) # 数据多的时候设置不显示标签

bar.set_global_opts(title_opts=opts.TitleOpts(title='相亲男女年龄分布'))

# 标记最大值 最小值 平均值 标记平均线

bar.set_series_opts(label_opts=opts.LabelOpts(is_show=False),

markpoint_opts=opts.MarkPointOpts(

data=[

opts.MarkPointItem(type_="max", name="最大值"),

opts.MarkPointItem(type_="min", name="最小值"),

opts.MarkPointItem(type_="average", name="平均值")]),

markline_opts=opts.MarkLineOpts(

data=[

opts.MarkLineItem(type_="average", name="平均值")]))

bar.render('年龄分布.html')

结果如下:

6ac9e96a93790aba80f53b8089a37204.gif

31 岁的相亲男女人数最多,有 2637 人,各个年龄段都有一定数量的人,我们将年龄小于等于 20 岁,大于等于 70 岁的相亲男女数据单独提取出来看看。

import pandas as pd

df = pd.read_excel('处理后数据.xlsx')

df1 = df[df['年龄']

df2 = df1['婚况'].value_counts() # 统计小于等于20岁的相亲男女的婚况

print(df2)

结果如下:

未婚 153

离异 6

丧偶 2

Name: 婚况, dtype: int64

大部分是未婚,年纪轻轻就那么急着相亲吗?再看看婚况是离异、丧偶的数据,

import pandas as pd

df = pd.read_excel('处理后数据.xlsx')

df1 = df[df['年龄'] 20]

df3 = df1[df1['婚况'] == '离异']

print(df3)

结果如下:

网名性别 ... 学历 月薪

17425微风轻起 男士 ... 未知 50000

29645媳妇 女士 ... 大专 未知

30398仙妹 女士 ... 高中 未知

30485会员1415395937 男士 ... 未知 35000

36684微笑着变老 女士 ... 高中 未知

49864风吹动了风玲 女士 ... 高中 未知

[6rows x 9 columns]

月薪写着 50000、35000 的男士有些显眼啊,取数据集中查看。

524119e71afc78a841b9bb4a43db6429.gif

月薪 50000 的微风轻起,征婚信息年龄写的 19,征婚宣言里又写到 1994 年 26 岁;月薪 35000 的会员某某某,征婚信息年龄写的 20,征婚宣言里又写到 81 年的,看来网站里年龄、身高这些信息真实性值得怀疑。

相亲男女婚况?

# -*- coding: UTF-8 -*-

"""

@File :男女占比情况.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import collections

from pyecharts.charts import Pie

from pyecharts import options as opts

from pyecharts.globals import ThemeType, CurrentConfig

# 引用本地js资源渲染

CurrentConfig.ONLINE_HOST = 'D:/python/pyecharts-assets-master/assets/'

# 提取数据 婚况不为未填写的

df = pd.read_excel('处理后数据.xlsx')

data = df[df['婚况'] != '未填写']

# 统计各婚况相亲男女人数

data_count = collections.Counter(data['婚况']).most_common()

print(data)

c = (

Pie()

.add(

"婚况",

data_count,

radius=["40%", "55%"],

label_opts=opts.LabelOpts(

position="outside",

formatter="{a|{a}}{abg|}\n{hr|}\n {b|{b}: }{c} {per|{d}%} ",

background_color="#eee",

border_color="#aaa",

border_width=1,

border_radius=4,

rich={

"a": {"color": "#999", "lineHeight": 22, "align": "center"},

"abg": {

"backgroundColor": "#e3e3e3",

"width": "100%",

"align": "right",

"height": 22,

"borderRadius": [4, 4, , ],

},

"hr": {

"borderColor": "#aaa",

"width": "100%",

"borderWidth": 0.5,

"height": ,

},

"b": {"fontSize": 16, "lineHeight": 33},

"per": {

"color": "#eee",

"backgroundColor": "#334455",

"padding": [2, 4],

"borderRadius": 2,

},

},

),

)

.set_colors(["#8B008B", "#FF1493", "#000000"])

.set_global_opts(title_opts=opts.TitleOpts(title="相亲男女婚况"))

.render("pie_rich_label.html")

)

结果如下:

9a30c78cd4d0a516b8b5b746978a3a55.gif相亲男女婚况,离异的占比 57.67%,未婚占比 34.14%,丧偶占比 8.19%。

相亲男女学历分布情况?

# -*- coding: UTF-8 -*-

"""

@File :学历分布.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import collections

from pyecharts.charts import Pie

from pyecharts import options as opts

from pyecharts.globals import CurrentConfig

# 引用本地js资源渲染

CurrentConfig.ONLINE_HOST = 'D:/python/pyecharts-assets-master/assets/'

# 提取数据 学历不为未知的

df = pd.read_excel('处理后数据.xlsx')

data = df[df['学历'] != '未知']

# print(data)

# 统计各学历层次相亲男女数量

data_count = collections.Counter(data['学历']).most_common()

c = (

# 宽 高 背景颜色

Pie(init_opts=opts.InitOpts(width="800px", height="500px", bg_color="#2c343c"))

.add(

series_name="相亲男女学历", # 系列名称

data_pair=data_count, # 系列数据项,格式为 [(key1, value1), (key2, value2)...]

rosetype="radius", # radius:扇区圆心角展现数据的百分比,半径展现数据的大小

radius="55%", # 饼图的半径

center=["50%", "50%"], # 饼图的中心(圆心)坐标,数组的第一项是横坐标,第二项是纵坐标

label_opts=opts.LabelOpts(is_show=False, position="center"), # 标签配置项

)

.set_colors(["#00BFFF", "#00FF7F", "#FF1493", "#8B008B", "#FFFF00", "#556B2F"])

.set_global_opts(

title_opts=opts.TitleOpts(

title="相亲男女学历",

pos_left="center",

pos_top="20",

title_textstyle_opts=opts.TextStyleOpts(color="#fff"),

),

legend_opts=opts.LegendOpts(is_show=False),

)

.set_series_opts(

tooltip_opts=opts.TooltipOpts(

trigger="item", formatter="{a} {b}: {c} ({d}%)"# 'item': 数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用

),

label_opts=opts.LabelOpts(color="#fff"),

)

.render("相亲男女学历.html")

)

结果如下:

3722084d2e6731daafb9b9abed7ae137.gif

相亲男女学历大部分在高中(35.92%)、大专(24.72%),有近六成的相亲男女,本科占比 20.7%,中专占比 16.35%,硕士、博士高学历的相亲男女人数较少,分别占比 2.14%,0.17%。

相亲男女地区分布?

# -*- coding: UTF-8 -*-

"""

@File :地区分布.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import collections

from pyecharts import options as opts

from pyecharts.charts import Geo

from pyecharts.globals import ChartType

from pyecharts.globals import ThemeType, CurrentConfig

CurrentConfig.ONLINE_HOST = 'D:/python/pyecharts-assets-master/assets/'

df = pd.read_excel('处理后数据.xlsx')

area = list(df['居住地'])

area_count = collections.Counter(area).most_common(34)

print(area_count)

# 初始化配置项 背景颜色 大小 主题

geo = Geo(init_opts=opts.InitOpts(width='1000px', height='600px', theme=ThemeType.DARK))

# 设置是否显示省份

geo.add_schema(maptype='china', label_opts=opts.LabelOpts(is_show=True))

# 绘制什么类型图 热力图 涟漪图等

geo.add('相亲男女人数', data_pair=area_count, type_=ChartType.EFFECT_SCATTER)

geo.set_series_opts(label_opts=opts.LabelOpts(is_show=False)) # 不显示数据标签

geo.set_global_opts(title_opts=opts.TitleOpts(title="相亲男女地区分布"),

visualmap_opts=opts.VisualMapOpts(max_=5000, is_piecewise=True, # 划分区间是否精确

pieces=[{"max": 1000, "min": 100, "label": "100-1000", "color": "#708090"}, # 分段 添加图例注释 和颜色

{"max": 1500, "min": 1001, "label": "1001-1500", "color": "#00008B"},

{"max": 2000, "min": 1501, "label": "1501-2000", "color": "#483D8B"},

{"max": 2500, "min": 2001, "label": "2001-2500", "color": "#1E90FF"},

{"max": 3000, "min": 2501, "label": "2501-3000", "color": "#8B008B"},

{"max": 5000, "min": 3001, "label": ">=3000", "color": "#FF0000"}])

)

geo.render('地区分布.html')

结果如下:

[('重庆', 4436), ('广东', 2637), ('四川', 2519), ('山东', 2398), ('河南', 2160), ('上海', 2156), ('云南', 2039), ('北京', 2037), ('台湾', 1997), ('安徽', 1920), ('江苏', 1919), ('天津', 1918), ('黑龙江', 1918), ('湖南', 1800), ('新疆', 1799), ('辽宁', 1680), ('甘肃', 1680), ('广西', 1679), ('湖北', 1679), ('内蒙古', 1559), ('山西', 1440), ('福建', 1440), ('江西', 1440), ('浙江', 1440), ('陕西', 1439), ('河北', 1439), ('青海', 1339), ('贵州', 1200), ('吉林', 1080), ('西藏', 942), ('宁夏', 702), ('海南', 360), ('香港', 353), ('澳门', 117)]

12697ad2342603afc29fc115846f2906.gif

征婚宣言一般是介绍自己情况,表达对另一半的要求和期望,下面我们分别来看看相亲男女征婚宣言里关键词都有些什么。

# -*- coding: UTF-8 -*-

"""

@File :征婚宣言词云.py

@Author :叶庭云

@CSDN :https://yetingyun.blog.csdn.net/

"""

import pandas as pd

import jieba

import collections

import re

from wordcloud import WordCloud

import matplotlib.pyplot as plt

import numpy as np

from PIL import Image

# 提取性别 征婚宣言这两列数据就好

df = pd.read_excel('处理后数据.xlsx')[['性别', '征婚宣言']]

# df1 = df[df['性别'] == '女士']['征婚宣言']

df2 = df[df['性别'] == '女士']['征婚宣言']

# 读取停用词数据

with open('stop_words.txt', encoding='utf-8') as f:

con = f.read().split('\n') # 得到每一行的停用词

stop_words = set()

for i in con:

stop_words.add(i)

result_list = []

for data in df2:

# 文本预处理 去除一些无用的字符 只提取出中文出来

new_data = re.findall('[\u4e00-\u9fa5]+', data, re.S)

new_data = "/".join(new_data)

# 文本分词

seg_list_exact = jieba.cut(new_data, cut_all=True)

# 去除停用词和单个词

for word in seg_list_exact:

if word notin stop_words and len(word) > 1:

result_list.append(word)

print(result_list)

# 筛选后统计

word_counts = collections.Counter(result_list)

mask_ = 255 - np.array(Image.open('woman_mask.png'))

# 绘制词云

my_cloud = WordCloud(

background_color='white', # 设置背景颜色 默认是black

mask=mask_,

font_path='simhei.ttf', # 设置字体 显示中文

max_font_size=112, # 设置字体最大值

min_font_size=12, # 设置字体最小值

random_state=88# 设置随机生成状态,即多少种配色方案

).generate_from_frequencies(word_counts)

# 绘制词云

plt.figure(figsize=(8, 5), dpi=200)

# 显示生成的词云图片

plt.imshow(my_cloud, interpolation='bilinear')

# 显示设置词云图中无坐标轴

plt.axis('off')

plt.savefig('woman_cloud.png', dpi=200)

plt.show()

结果如下:

d9509d35c37ec27a828a6a785e0bd37b.png

bcc0e469e460eb752d2d9887c5669c93.png

相亲男女征婚宣言里,喜欢、希望、生活、善良、真诚、真心、幸福、性格都是出现频率高的词语。

以上。

25ea3d63ec60309b928a8549a9cb1365.gif

程序员如何避免陷入“内卷”、选择什么技术最有前景,中国开发者现状与技术趋势究竟是什么样?快来参与「2020 中国开发者大调查」,更有丰富奖品送不停!


http://chatgpt.dhexx.cn/article/r13EP65O.shtml

相关文章

vue中echarts使用案例:饼图(可直接使用)

目录 功能、效果图: 代码实现 1、下载echarts包:终端运行 2、代码 3.运行项目:终端运行 4、可能遇到的错误 具体代码详解: 功能、效果图: 1.点击对应模块,放大并显示数据 2、点击下方图标&#xff0c…

Python绘制柱状图之可视化神器pyecharts(一)

目录 pyecharts介绍 特性 优势 展示 柱状图模板系列 水晶柱状图 解决X轴标签过长的柱状图 自定义平均刻度标签(方便查看超出范围) 翻转X Y轴柱状图 可以移动的X轴柱状图(适合数据类别过多) 可以移动的Y轴柱状图&#x…

已解决:vue echart 动态获取数据且定时刷新

文章目录 写在前面需求①需求②需求③无效的解决办法1:无效的解决办法2有效的解决办法 写在前面 我太难了,搞一个echart仪表盘,需求一步步分解: ①一开始是写死的假数据,图表成功显示在页面上; ②和后台约定数据类型格…

Python绘制柱状图之可视化神器pyecharts(二)

目录 主题介绍 图表参数 主题详解 柱状图模板系列 海量数据柱状图动画展示 收入支出柱状图(适用于记账) 我们在日常的生活中,有收入也有支出,这个模板就是把收入和支出直观的展示在读者面前。 三维数据叠加 柱状图与折线…

day07 pyecharts制图

目录 Python配置安装pyecharts 一、柱状图的使用二、折线图三、饼图四、地图五、词云六、组合图 Python配置安装pyecharts Python配置国内镜像源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pycharm配置pyecharts 一、柱状图的使用 # 导入…

vue-echarts主题切换+选择面板实现

通过实现主题选择面板,更方便的对echarts图表进行主题的切换,并且支持饼状图、折线图、柱状图等多类型echarts图表。 目录 1、实现过程 1.1、导入echarts主题JS文件 1.2、添加选择按钮图片 1.3、添加按钮 1.4、主题选择面板实现 1.5、初始化echart…

echarts 2.0 macarons主题安装

2019独角兽企业重金招聘Python工程师标准>>> 主题下载: http://echarts.baidu.com/doc/example/theme/macarons.js 其他主题改名字就好了.[无责任猜测] 这里采用AMD加载方式 [博主用的是requirejs] 在main.js中 require.config({paths:{echarts:js/echarts/echarts…

魔法值及魔法值处理方法

魔法值 什么是魔法值 所谓的魔法值就是在代码中直接出现的数字。   PS:代码中有魔法值会造成代码可读性低(与代码量成正比)。还会造成维护困难,改动一个数值便要大动干戈,牵一发而动全身。应当尽力消灭或减少魔法值…

别让【魔法值】毁了你的代码!

二分钟,教你一个写代码的好习惯。 大家好,我是鱼皮,今天通过一件事情,分享写代码时的一个重要小技巧。 前段时间,我在编程导航项目中开源了一段代码,实现的功能是,当用户的操作失败时&#xff…

【java】万恶的魔法值

在最近的小云通知项目中,我负责维护后端的开发,也是深刻体会到用魔法值会给维护人员带来多大的痛苦!可谓一个bug改一天…… 文章目录 什么是魔法值怎么处理魔法值 什么是魔法值 首先我们说一下什么是魔法值,所谓魔法值&#xff0…

什么是java中的魔法值

自从在idea上用了 《阿里巴巴Java开发手册》的插件之后 这里附上对应的插件安装方法:https://developer.aliyun.com/article/224817 偶然发现自己的代码中出现了所谓的 “魔法值” 什么是魔法值呢 所谓魔法值,就是在代码中直接出现的数值,只…

Java中的魔法值和解决方法

目录 一、什么是魔法值 二、解决方法 一、什么是魔法值 魔法数值、魔法数字、魔法值,这是一个东西,不同的叫法。 所谓魔法值,是指在代码中直接出现的数值,只有在这个数值记述的那部分代码中才能明确了解其含义,数字…

java 不要使用魔法值_为什么阿里巴巴Java开发手册中不允许魔法值出现在代码中?...

武培轩 推荐搜索 JavaSpring Boot数据结构MySQLElasticsearchNginx 在阅读《阿里巴巴Java开发手册》时,发现有一条关于关于常量定义的规约,具体内容如下: 图中的反例是将数据缓存起来,并使用魔法值加链路 id 组成 key,…

java 项目减少魔法值_项目代码中魔法值的优雅处理

经常在代码里面会用一些表示有意义的数字,但是如果不写注释的话,过了一段时间我们自己再回去优化代码的时候,可能自己也不清楚这些数字表示的是什么意思了。 如果写注释的话,就要每次使用数字的时候都要写注释了,这样的…

java 魔法值_Java 开发技巧:减少魔法值的使用

1. 前言 重构老代码中遇到了类似这种写法: public void attend(String value){ if ("0".equals(value)) { //todo } else if ("1".equals(value)) { //todo } else { //todo } } 脑壳疼!从 Java 语法上无懈可击,但是从业…

IDEA快速去除魔法值

背景 写代码有的时候为了方便,会在代码里面留下很多字符串之类的变量。这种便便会被定义为魔法值。 这种变量正常来讲不影响阅读的。所以一般情况下,我们都不会去处理它。 但是当项目越来越大的时候,我们发现很多地方都有可能使用了同一个…

魔法值与解决办法

1.什么是魔法值 魔法值是指代码中突然出现的数字,之所以称为魔法值,是因为这个20可以有多种意义。在新来的员工接手你的代码时,他们产生疑问:为什么要设这个20,背后有什么秘密吗。大大降低了代码的可维护性。 2.解决办…

java怎么字符连接换行_Java中的换行、转义字符和连接字符-Go语言中文社区

语句输出的换行 我们之前完成了我们的第一个Java输出语句,接下来我们可以做一个简单的输出换行与不换行操作。 例如:我们输出天王盖地虎和宝塔镇河妖 public class Demo1 { public static void main(String[] args) { System.out.println("天王盖地…

java csv 换行_javacsv如何换行输入

javacsv如何换行输入 [2021-02-10 01:25:25] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件;然后通过“preg_replace("/(\s|\&nbsp\;| |\xc2\xa0)/", " ", strip_tags($val));”方法去除所有nbsp即可。推荐:《PHP视频教 java怎么输入换行…

java输出流怎样换行_Java中输出流续写和换行写方法,需要用到的构造方法的知识点...

/* FileOutputStream​(String name, boolean append) 创建文件输出流以指定的名称写入文件。 FileOutputStream​(File file, boolean append) 创建文件输出流以写入由指定的 File对象表示的文件。 创建指定File对象表示的文件中写入数据的文件输出流 构造方法的参数: String …