科技爱好者博客 http://blog.lxx1.com 开源知识分享博客,讨论树莓派、Arduino、Linux、服务器使用配置教程 Thu, 12 Apr 2018 01:06:54 +0000 zh-CN hourly 1 https://wordpress.org/?v=4.9.6 Word常用字体下载(方正小标宋简体|仿宋GB2312) http://blog.lxx1.com/3077 http://blog.lxx1.com/3077#respond Thu, 12 Apr 2018 01:06:38 +0000 http://blog.lxx1.com/?p=3077 Word常用字体下载(方正小标宋简体|仿宋GB2312),首发于科技爱好者博客

在word上,经常要用到的字体是方正小标宋简体和仿宋GB2312字体,方正小标宋简体主要用于公文标题,而仿宋GB2312用于公文的正文。

Word常用字体下载(方正小标宋简体|仿宋GB2312),首发于科技爱好者博客

]]>
Word常用字体下载(方正小标宋简体|仿宋GB2312),首发于科技爱好者博客

在word上,经常要用到的字体是方正小标宋简体仿宋GB2312字体,方正小标宋简体主要用于公文标题,而仿宋GB2312用于公文的正文。

下载地址:

方正小标宋简体:方正小标宋简体

仿宋GB2312字体:仿宋_GB2312

字体介绍:

方正小标宋简体是款标准正规的电脑字体。方正小标宋简体适用于行政机关公文的发文机关标识,用红色标识,公文标题应使用2号小标宋体字,公文主题词的词目应使用3号小标宋体字。而普通电脑一般未自带该字体,需手动下载安装。

方正小标宋简体使用说明:

1、将字体复制到C:\Windows\Fonts文件夹或选择电脑的开始菜单>控制面板>字体进行安装。

2、Win7、win8、win10用户可直接右键选择安装,或者直接双击即可看到示例和安装。

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: Word常用字体下载(方正小标宋简体|仿宋GB2312) (http://blog.lxx1.com/3077)

如果博客对您有帮助,请给我 打赏


Word常用字体下载(方正小标宋简体|仿宋GB2312),首发于科技爱好者博客

]]>
http://blog.lxx1.com/3077/feed 0
网站访问统计系统matomo开启SSL的方法 http://blog.lxx1.com/3063 http://blog.lxx1.com/3063#respond Fri, 06 Apr 2018 19:06:02 +0000 http://blog.lxx1.com/?p=3063 网站访问统计系统matomo开启SSL的方法,首发于科技爱好者博客

概述 网站访客统计系统matomo的前身是piwik,它是一个强大的网站流量分析网站,其类似于百度统计、Google统计等网站访客统计分析系统,我在自己的服务器上搭建了matomo,从而可以详细的了解科技爱好者博客的访问数据,相比第三方的网站流量分析系统,自 ...

网站访问统计系统matomo开启SSL的方法,首发于科技爱好者博客

]]>
网站访问统计系统matomo开启SSL的方法,首发于科技爱好者博客

概述

网站访客统计系统matomo的前身是piwik,它是一个强大的网站流量分析网站,其类似于百度统计、Google统计等网站访客统计分析系统,我在自己的服务器上搭建了matomo,从而可以详细的了解科技爱好者博客的访问数据,相比第三方的网站流量分析系统,自己搭建的灵活性比较高,并且可以从中学到更多的知识。详细的matomo(piwik)介绍请看前期写的介绍文章:Piwik——最好用的开源网站统计系统 ,这里给大家介绍matomo强制开启SSL的方法步骤,从而提高网站数据的安全性。

设置过程

1.网站服务器申请SSL证书,可以申请Let’s Encrypt免费证书,也可以付费申请证书,这里我申请的是Let’s Encrypt免费证书。

网站部署SSL证书

2.强制开启SSL,编辑config / config.ini.php文件,并在该[General]部分下添加以下内容并保存:

[General] force_ssl = 1

这样matomo强制开启SSL就成功了,再次访问matomo,可以发现已经使用了安全程度更高的https来访问,浏览器地址栏也出现了一把小绿锁,Matomo(Piwik)会自动将所有http://请求重定向到https://路由。

 

禁用强制SSL

如果由于某些原因需要禁用“强制SSL”功能,只需将force_ssl=1从config.ini.php文件中删除即可。

 

官方的解决方案:

https://matomo.org/faq/how-to/faq_91/

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 网站访问统计系统matomo开启SSL的方法 (http://blog.lxx1.com/3063)

如果博客对您有帮助,请给我 打赏


网站访问统计系统matomo开启SSL的方法,首发于科技爱好者博客

]]>
http://blog.lxx1.com/3063/feed 0
完成了阿里云学生认证 http://blog.lxx1.com/3005 http://blog.lxx1.com/3005#comments Thu, 08 Feb 2018 09:28:11 +0000 http://blog.lxx1.com/?p=3005 完成了阿里云学生认证,首发于科技爱好者博客

阿里云一直有学生认证优惠,年付119就可以使用1年时间的1核2G1Mbps的服务器,最近用了同学的学生信息完成了学生认证,要开始搬迁博客了。

完成了阿里云学生认证,首发于科技爱好者博客

]]>
完成了阿里云学生认证,首发于科技爱好者博客

阿里云一直有学生认证优惠,年付119就可以使用1年时间的1核2G1Mbps的服务器,最近用了同学的学生信息完成了学生认证,要开始搬迁博客了。

阿里云学生认证
阿里云学生认证

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 完成了阿里云学生认证 (http://blog.lxx1.com/3005)

如果博客对您有帮助,请给我 打赏


完成了阿里云学生认证,首发于科技爱好者博客

]]>
http://blog.lxx1.com/3005/feed 3
树莓派构建LAMP Web服务器并搭建WordPress博客 http://blog.lxx1.com/2921 http://blog.lxx1.com/2921#comments Wed, 31 Jan 2018 16:01:36 +0000 http://blog.lxx1.com/?p=2921 树莓派构建LAMP Web服务器并搭建WordPress博客,首发于科技爱好者博客

你会做什么 学习在您的Raspberry Pi上设置LAMP(Linux,Apache,MySQL,PHP)堆栈,并将其配置为Web服务器。您将下载并安装WordPress并设置一个基本网站,您可以在与Pi相同的网络上的任何设备上访问该网站。 你会学到什么 通过跟踪此资源并设置Web服务 ...

树莓派构建LAMP Web服务器并搭建WordPress博客,首发于科技爱好者博客

]]>
树莓派构建LAMP Web服务器并搭建WordPress博客,首发于科技爱好者博客

你会做什么

学习在您的Raspberry Pi上设置LAMP(Linux,Apache,MySQL,PHP)堆栈,并将其配置为Web服务器。您将下载并安装WordPress并设置一个基本网站,您可以在与Pi相同的网络上的任何设备上访问该网站。

你会学到什么

通过跟踪此资源并设置Web服务器和WordPress网站,您将学习:

  • 如何在您的Raspberry Pi上安装软件
  • 如何安装和配置Apache,PHP和MySQL来创建一个LAMP Web服务器
  • 如何下载WordPress并将其作为您的Raspberry Pi上的本地网站运行
  • 如何配置WordPress并使您的网站可以访问本地网络上的其他设备

你会需要什么

  • 一台树莓派计算机

使用WordPress构建LAMP Web服务器

学习在您的Raspberry Pi上设置LAMP(Linux,Apache,MySQL,PHP)堆栈,并将其配置为Web服务器。您将下载并安装WordPress并设置一个基本网站,您可以在与Pi相同的网络上的任何设备上访问该网站。

设置Apache Web服务器

Apache是​​一种受欢迎的Web服务器应用程序,您可以在Raspberry Pi上安装它,以使其能够提供网页。

自己,Apache可以通过HTTP提供HTML文件,其他模块可以使用PHP等脚本语言来提供动态网页。

安装Apache

首先apache2通过在终端中键入以下命令来安装软件包:

sudo apt-get install apache2 -y

测试Web服务器

默认情况下,Apache将测试HTML文件放在Web文件夹中。当您从网络上的另一台计算机浏览http://localhost/Pi本身或http://192.168.1.10(无论Pi的IP地址)浏览时,将提供此默认网页。要查找Pi的IP地址,hostname -I请在我们的文档中键入命令行(或阅读更多关于找到您的IP地址)。

浏览到默认网页,无论是在Pi上还是从网络上的其他计算机,您应该看到以下内容:

这意味着你有Apache工作!

更改默认网页

此默认网页只是文件系统上的一个HTML文件。它位于/var/www/html/index.html

注意:在Raspbian Wheezy上目录为/var/www,但现在Raspbian Jessie上目录为/var/www/html。

导航到终端中的此目录,并查看内容:

cd /var/www/html
ls -al

这将告诉你:

total 12
drwxr-xr-x  2 root root 4096 Jan  8 01:29 .
drwxr-xr-x  3 root root 4096 Jan  8 01:28 ..
-rw-r--r--  1 root root  177 Jan  8 01:29 index.html

这表明有一个文件/var/www/html/被调用index.html。该.指目录本身/var/www/html..指父目录/www/

列是什么意思

  • 文件或目录的权限
    1. 目录中的文件数(或者1是文件)。
    2. 拥有该文件或目录的用户
    3. 拥有文件或目录的组
    4. 文件大小
    5. 最后修改日期和时间

如您所见,默认情况下,html目录和index.html文件均由root用户拥有,因此您需要使用sudo它们进行编辑。

尝试编辑此文件并刷新浏览器以查看网页更改。按下Ctrl + XEnter保存并退出。

安装PHP

PHP是一个预处理器; 它是当服务器收到网页请求时运行的代码。它运行,解决了页面上需要显示的内容,然后将该页面发送到浏览器。与静态HTML不同,PHP可以在不同的情况下显示不同的内容。其他语言能够实现这一点,但由于WordPress是用PHP编写的,所以我们需要使用这个时间。PHP是网络上非常流行的语言; 像Facebook和维基百科这样的大型项目是用PHP编写的。

使用以下命令安装PHP和Apache包:

sudo apt-get install php5 libapache2-mod-php5 -y

测试PHP

创建文件index.php:

sudo leafpad index.php

(或使用nano

在其中放入一些PHP内容:

<?php  echo  hello world  ; ?>

现在保存文件。接下来删除index.html因为它需要超过index.php的优先级:

sudo rm index.html

刷新浏览器 你应该看到“你好世界”。这不是动态的,但它仍然由PHP提供。
如果您看到原始PHP,而不是“hello world”,请重新加载并重新启动Apache,如下所示:

sudo service apache2 restart

否则尝试一些动态的,例如:

<?php  echo  date' Ymd H:i:s '); ?>

或显示您的PHP信息:

<?php  phpinfo(); ?>

安装MySQL

MySQL(发音为My SequelMy SQL)是一个受欢迎的数据库引擎。像PHP一样,其在网络服务器上的压倒性影响力增强了其受欢迎程度。这就是WordPress这样的项目使用它,为什么这些项目如此受欢迎。

通过在终端中输入以下命令来安装MySQL Server和PHP-MySQL软件包:

sudo apt-get install mysql-server php5-mysql -y

安装MySQL时,将要求您输入root密码。您需要记住这一点,才能让您的网站访问数据库。

现在重新启动Apache:

sudo service apache2 restart

设置您的WordPress数据库

为了让您的WordPress网站设置,您需要一个数据库。mysql在终端中运行命令并提供您的登录凭据(例如用户名root,密码password):

mysql -uroot -ppassword

这里我password在命令行上提供了我的密码(这个词)-p您的密码之间没有空格。

或者,您只需提供一个空-p标志,等待被要求输入密码:

mysql -uroot -p

现在,系统将提示您输入您之前创建的root用户密码。

一旦连接到MySQL,您可以创建WordPress安装将使用的数据库:

mysql> create database wordpress;

注意结尾语句的分号。成功后,您应该看到以下消息:

Query OK, 1 row affected (0.00 sec)

退出MySQL提示符Ctrl + D

WordPress配置

您需要找到您的Pi的IP地址才能在浏览器中访问它,因此在终端中键入命令hostname -I

导航到http://YOUR-IP-ADDRESS例如http://192.168.1.5在您的网络浏览器。

你应该看到一个WordPress weclome页面。

点击Let's go!按钮。

现在填写以下基本网站信息:

Database Name:      wordpress
User Name:          root
Password:           <YOUR PASSWORD>
Database Host:      localhost
Table Prefix:       wp_

并单击Submit继续。

现在点击Run the install按钮。

现在你越来越近了

填写信息:给您的网站一个标题,创建用户名和密码并输入您的电子邮件地址。按下Install WordPress按钮,然后使用刚创建的帐户登录。

现在,您已经登录并设置了您的网站,您可以通过在Pi或网络上的另一台计算机上的浏览器中访问您的IP地址来查看该网站。要重新登录(或另一台计算机),请转到http://YOUR-IP-ADDRESS/wp-admin

建议您更改永久链接设置,使您的网址更加友好。

为此,请登录到WordPress并转到仪表板。

转到Settings然后Permalinks

选择该Post name选项并单击Save Changes

您需要启用Apache的rewritemod:

sudo a2enmod rewrite

您还需要告知提供站点的虚拟主机,以允许覆盖请求。

编辑虚拟主机的Apache配置文件:

sudo leafpad /etc/apache2/sites-available/000-default.conf

(或使用nano

在第1行之后添加以下行:

<Directory "/var/www/html">
    AllowOverride All
</Directory>

确保它是<VirtualHost *:80>这样的:

<VirtualHost *:80>
    <Directory "/var/www/html">
        AllowOverride All
    </Directory>
    ...

然后再次重新启动Apache:

sudo service apache2 restart

定制

WordPress是非常可定制的。通过在页面顶部的WordPress横幅中单击您的网站名称(登录时),您将被带到仪表板。从这里您可以更改主题,添加页面和帖子,编辑菜单,添加插件和更多。这只是在Raspberry Pi的Web服务器上设置一些有趣的东西。

 

本文翻译自:https://projects.raspberrypi.org/en/projects/lamp-web-server-with-wordpress

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 树莓派构建LAMP Web服务器并搭建WordPress博客 (http://blog.lxx1.com/2921)

如果博客对您有帮助,请给我 打赏


树莓派构建LAMP Web服务器并搭建WordPress博客,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2921/feed 4
使用Python制作简单的GUI http://blog.lxx1.com/2961 http://blog.lxx1.com/2961#comments Thu, 04 Jan 2018 04:40:50 +0000 http://blog.lxx1.com/?p=2961 使用Python制作简单的GUI,首发于科技爱好者博客

你会做什么 在这个资源中,您将学习如何在Python中制作简单的GUI。 你会学到什么 通过在Python中创建一个GUI,您将学习: 什么是GUI(图形用户界面)? 使用功能 事件驱动的编程以及它与程序编程的不同之处   ...

使用Python制作简单的GUI,首发于科技爱好者博客

]]>
使用Python制作简单的GUI,首发于科技爱好者博客

你会做什么

在这个资源中,您将学习如何在Python中制作简单的GUI。

你会学到什么

通过在Python中创建一个GUI,您将学习:

  • 什么是GUI(图形用户界面)?
  • 使用功能
  • 事件驱动的编程以及它与程序编程的不同之处

 

你将需要什么

硬件

  • 电脑(PC / Mac /树莓派)

软件

软件安装

要在Raspberry Pi或Mac上安装所需的软件,请在终端中运行以下命令:

sudo pip3 install guizero

如果您正在使用Windows计算机,则需要确保已安装pip。打开命令提示符并键入:

python -m pip install -U pip

安装pip后,在命令提示符下键入:

pip install guizero

 

 

本文翻译自:https://projects.raspberrypi.org/en/projects/getting-started-with-guis

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 使用Python制作简单的GUI (http://blog.lxx1.com/2961)

如果博客对您有帮助,请给我 打赏


使用Python制作简单的GUI,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2961/feed 1
科技爱好者博客2017年总结(感觉可以改名树莓派博客了~) http://blog.lxx1.com/2940 http://blog.lxx1.com/2940#comments Sat, 30 Dec 2017 10:10:15 +0000 http://blog.lxx1.com/?p=2940 科技爱好者博客2017年总结(感觉可以改名树莓派博客了~),首发于科技爱好者博客

今年博客的访问量达到了166,838,比去年增加了106%(80775),总访问人数为106,552,比去年增加了141%(44035)。今年上半年还在大学培训,花在写博客上的时间大大减少,但博客的访问量不降反增,可能是因为我利用空闲时间写了比较多的树莓派文章,导致访问 ...

科技爱好者博客2017年总结(感觉可以改名树莓派博客了~),首发于科技爱好者博客

]]>
科技爱好者博客2017年总结(感觉可以改名树莓派博客了~),首发于科技爱好者博客

今年博客的访问量达到了166,838,比去年增加了106%(80775),总访问人数为106,552,比去年增加了141%(44035)。今年上半年还在大学培训,花在写博客上的时间大大减少,但博客的访问量不降反增,可能是因为我利用空闲时间写了比较多的树莓派文章,导致访问量大增。访问量排行前十的文章为:

  1. 树莓派(raspberrypi)常用镜像高速下载 | 科技爱好者博客
  2. Centos 7中安装Python包管理工具——Pip | 科技爱好者博客
  3. Piwik——最好用的开源网站统计系统 | 科技爱好者博客
  4. 科技爱好者博客 | 开源知识分享博客,讨论树莓派、Arduino、Linux、服务器使用配置教程
  5. Centos下搭建Squid代理服务器详细教程 | 科技爱好者博客
  6. 树莓派设置静态IP地址 | 科技爱好者博客
  7. 比树莓派还便宜的开发板 Orange Pi PC(香橙派)问世——科技爱好者博客
  8. 解决树莓派使用HDMI-VGA转换器黑屏的方案 | 科技爱好者博客
  9. 树莓派3.5英寸屏幕安装显示驱动,解决白屏问题 | 科技爱好者博客
  10. 解决Ubuntu上由于boot容量不足引起的无法更新系统 | 科技爱好者博客
访客地图
访客地图

从访问量前十的文章也可以看出,访问最多的就是关于树莓派的内容,所以就有了这个标题,感觉可以改名成树莓派博客了。

在16万的浏览量中,有83%来自中国,剩下最多的是来自美国的访客(5.4%),看来在异国他乡,也有不少人通过博客来查找资料。

通过实时地图也可以看到,来自中国和美国的访客最多。

科技爱好者博客访客实时地图
科技爱好者博客访客实时地图

访客所使用的浏览器前三名分别是Chrome(64.9%)、Mobile Safari(7%)、Firefox(6.1%),果然,程序员都喜欢用的浏览器是Chrome啊;在操作系统方面,排行前五名分别为

Windows 7(38.7%)

Windows 10(25.1%)

Mac 10.12(5.7%)

iOS 9.1(3.3%)

GNU/Linux(3.1%)

剩下的各类操作系统比较多,例如Android就有多个版本,其他操作系统占比为24%。看来Windows7 的使用还很广泛啊。

操作系统占比
操作系统占比

访问设备方面,通过这一年的统计发现,桌面终端占比为80%,而智能手机和平板电脑加起来仅为18%,这里一大部分原因是看我博客的人都是来解决编程问题的,所以桌面端占比比较大可以理解。相比桌面的80%来说,移动端占比太少,现在移动端发展这么迅速,估计明年这个比例会发生较大的变化。

设备类型
设备类型

最后,看看一个访问量最高页面的综合分析。

页面是树莓派(raspberrypi)常用镜像高速下载(http://blog.lxx1.com/raspberrypi-jingxiang)

树莓派(raspberrypi)常用镜像高速下载综合分析
树莓派(raspberrypi)常用镜像高速下载综合分析

可以看到,访客最多是从搜索引擎进来的,搜索的关键词主要有树莓派系统镜像、树莓派镜像、树莓派镜像下载、树莓派3镜像下载等几类。而跳转的链接则主要为树莓派相应系统的下载链接。

其他的像各个页面的点击分析太多了,就不给大家分析了。

页面点击分析
页面点击分析

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 科技爱好者博客2017年总结(感觉可以改名树莓派博客了~) (http://blog.lxx1.com/2940)

如果博客对您有帮助,请给我 打赏


科技爱好者博客2017年总结(感觉可以改名树莓派博客了~),首发于科技爱好者博客

]]>
http://blog.lxx1.com/2940/feed 4
树莓派存储温度数据并制作交互式图表 http://blog.lxx1.com/2914 http://blog.lxx1.com/2914#respond Sun, 01 Oct 2017 04:59:58 +0000 http://blog.lxx1.com/?p=2914 树莓派存储温度数据并制作交互式图表,首发于科技爱好者博客

Raspberry Pi的芯片系统(SoC)具有温度传感器,可用用命令行测量其温度。它可以提供芯片在运行期间产生多少热量的信息,并且还报告环境温度。该项目的目的是创建一个简单的Python脚本,可以在启动您的Raspberry Pi时自动运行,并以特定间隔从温度传感器 ...

树莓派存储温度数据并制作交互式图表,首发于科技爱好者博客

]]>
树莓派存储温度数据并制作交互式图表,首发于科技爱好者博客

Raspberry Pi的芯片系统(SoC)具有温度传感器,可用用命令行测量其温度。它可以提供芯片在运行期间产生多少热量的信息,并且还报告环境温度。该项目的目的是创建一个简单的Python脚本,可以在启动您的Raspberry Pi时自动运行,并以特定间隔从温度传感器进行测量,并将其写入日后可以查看的文件。您还可以以交互式绘制的图形来查看数据。

你会学到什么

通过完成温度项目,您将学习:

  • 如何在Python中运行系统命令
  • 如何将数据写入文件
  • 如何用matplotlib交互式绘制数据
  • 如何设置脚本以使用crontab自动运行

你会需要什么

软件

python3-matplotlib

软件安装

要安装所需的软件,请在终端中运行以下命令:

sudo apt-get install python3-matplotlib

温度记录

Raspberry Pi的芯片系统(SoC)具有温度传感器,可用于从命令行测量其温度。它可以提供关于芯片在运行期间产生多少热量的信息,并且还可以报告环境温度。该项目的目的是创建一个简单的脚本,可以在您启动Raspberry Pi时自动运行,并以特定间隔从温度传感器进行测量,并将其写入日后可以查看的文件。

创建一个Python脚本来监视温度

  • 通过 Menu > Programming > Python 3 (IDLE) 打开一个新的Python 3 shell。
  • 现在通过点击 File > New File 创建一个新的Python脚本。
  • 您可以使用GPIO Zero模块查找CPU温度。首先你需要导入CPUTemperature类:
      from gpiozero import CPUTemperature
  • 然后可以创建一个cpu对象:
      cpu = CPUTemperature()
    
  • 保存并运行此程序(按Ctrl + S,然后按F5),然后交换到shell。在这里,您可以轻松查询CPU温度。
>>> cpu.temperature
 32.552

将数据写入CSV文件

如果温度数据可以存储起来,这将非常有用。CSV(逗号分隔值)文件比较理想,因为它可以被Excel和LibreOffice等应用程序所使用。

  • 您将在获取CPU温度时记录日期和时间,因此需要一些额外的库。将其添加到您的导入:
      from time import sleep, strftime, time

    这些额外的模块让你暂停你的程序(sleep),将今天的日期作为一个字符串(strftime)获得,并在所谓的UNIX时间time)中获得确切的时间。

  • 要写入文件,您首先需要创建它。在文件末尾添加以下行:
      with open("cpu_temp.csv", "a") as log:

    这将创建一个名为“新文件” cpu_temp.csv的名称log。它也以附加模式打开它,因此行只会写入文件的末尾。

  • 现在,您将需要启动一个无限循环,直到您用Ctrl + C杀死程序:
      with open("cpu_temp.csv", "a") as log:
          while True:
  • 在循环中,您可以获取温度并将其存储为变量。
      with open("cpu_temp.csv", "a") as log:
          while True:
              temp = cpu.temperature
  • 现在,您要将当前日期和时间以及温度都写入CSV文件:
      with open("cpu_temp.csv", "a") as log:
          while True:
              temp = cpu.temperature
              log.write("{0},{1}\n".format(strftime("%Y-%m-%d %H:%M:%S"),str(temp)))
  • 那条命令有点复杂,所以让我们把它分解一下:
    • log.write() 将括号中的任何字符串写入CSV文件。
    • "{0},{1}\n" 是一个包含两个占位符的字符串,用逗号分隔,并以新行结束。
    • strftime("%Y-%m-%d %H:%M:%S")插入第一个占位符。这是当前的日期和时间作为一个字符串。
    • str(temp) 是将CPU温度转换为字符串,这是在逗号后写入第二个占位符。
  • 最后,您可以在文件的末尾添加一行,以便在写入之间暂停脚本。这里暂停一秒钟,当然您可以使用任何您想要的间隔:
      sleep(1)
  • 整个脚本现在应该如下所示:
     from gpiozero import CPUTemperature
      from time import sleep, strftime, time
    
      with open("cpu_temp.csv", "a") as log:
          while True:
              temp = cpu.temperature
              log.write("{0},{1}\n".format(strftime("%Y-%m-%d %H:%M:%S"),str(temp)))
              sleep(1)

 

实时绘制数据

您可以生成一个随着数据的记录CPU温度也更新的CPU温度图。为此,您需要使用matplotlib库。安装说明在这里

  • 首先,导入matplotlib库:
      import matplotlib.pyplot as plt
  • 您的导入后可以接下来三行。他们告诉matplotlib你会做交互式绘图,并创建两个列表,将保存要绘制的数据:
      plt.ion()
      x = []
      y = []
    
  • 下一行都进入你的while True循环,在CSV被写入之前,但temp = get_temp()在行之后。首先,将当前温度添加到y列表的末尾,并将列表的末尾添加到时间x
     y.append(temp)
     x.append(time())
    
  • 接下来,需要清除绘图,然后计算点和线:
     plt.clf()
     plt.scatter(x,y)
     plt.plot(x,y)
    
  • 最后,可以画出线:
      plt.draw()
    
  • 运行你的程序,你应该看到交互式绘制的图形。打开一些程序,如Minecraft或Mathematica,并观察CPU温度的升高。

本文翻译自:https://projects.raspberrypi.org/en/projects/temperature-log

原文:树莓派温度记录

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 树莓派存储温度数据并制作交互式图表 (http://blog.lxx1.com/2914)

如果博客对您有帮助,请给我 打赏


树莓派存储温度数据并制作交互式图表,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2914/feed 0
我的装备(硬件软件)介绍 http://blog.lxx1.com/2900 http://blog.lxx1.com/2900#comments Sat, 30 Sep 2017 03:01:52 +0000 http://blog.lxx1.com/?p=2900 我的装备(硬件软件)介绍,首发于科技爱好者博客

工欲善其事,必先利其器 --《论语》 古人很早就说了,工匠想要使他的工作做好,一定要先让工具锋利,同样的道理,在现在社会,我们所使用的装备对工作效率和生活质量有着极其紧密的联系,这也是我一直以来钟爱新产品的原因。在这里介绍下我当前在使用 ...

我的装备(硬件软件)介绍,首发于科技爱好者博客

]]>
我的装备(硬件软件)介绍,首发于科技爱好者博客

工欲善其事,必先利其器

–《论语》

古人很早就说了,工匠想要使他的工作做好,一定要先让工具锋利,同样的道理,在现在社会,我们所使用的装备对工作效率和生活质量有着极其紧密的联系,这也是我一直以来钟爱新产品的原因。在这里介绍下我当前在使用的装备,结合自己的使用感悟,给大家做个参考。

个人介绍

我是李新星,科技爱好者博客的博主,2016年6月从大学毕业,毕业后在一家企业上班,平时上班时间比较忙,也很少使用电脑。虽然自己的生活没有那么的丰富多彩,但是一直在关注各类数码产品,也算一个数码爱好者。

硬件

  • Lenovo Ideapad Flex14 联想在2012年出的一款超极本,特点是支持触摸屏,可以将屏幕翻转270度,机身厚度只有17mm,比当时的绝大部分笔记本都薄。当时买就是冲着触摸屏去的,结果买来一个月就后悔了,因为触摸屏根本用不上啊。现在我已经想不起来这款笔记本支持触摸屏了,只有当同学用手指在屏幕上指东西不小心划到时,他就会惊奇的说,原来是可以触摸的啊,这才提醒了我,不然早都忘了是可以支持触摸的。私以为,笔记本形态的电脑,触摸屏非常多余,即使是现在windows 10对触摸屏的支持已经很好了,但使用起来还很不方便。
  • jumper EZpad 由于经常在外,笔记本不方便携带,这时发现了一款国产的二合一windows 平板电脑,它比较小巧,屏幕只有10.6英寸,非常适合在外使用。
  • hongmi Note3 大四寒假时购买,替换在大学使用了三年多的手机。这部手机到现在还很流畅,但可惜的是存储容量只有32G,每次都提醒我要清理空间,这个很烦。对了,使用的CPU是联发科X10,在打王者荣耀的时候比较卡,特别是在团战时,一卡一卡的,估计这就是导致我上不了王者的原因哈哈。
  • HHKB pro 2  贼贵的键盘,比较适合程序员,不是机械键盘,而是电容键盘,寿命比机械键盘更长,可以传给自己的孙子~
HHKB Professional 2打字体验
  • Kindle 8 上大学前军训一个月,这段时间没啥事,就天天看书,发现纸质书很贵,而且买书也不方便,需要等快递,看完之后不好处理,尤其是搬家的时候,几本书就特别沉,然后就买了这款神器,解决了上述纸书的所有问题。

  • Raspberry 2B 看我博客的人估计都知道树莓派,一款只有信用卡大小的小电脑,可以安装linux操作系统,方便我研究linux。

  • Arduino Uno 一款开源的嵌入式开发板,我的专业是电子信息工程,学习的方向是嵌入式开发,上大学在实验室的时候就很想买,虽然价格在100左右,但一直也没舍得买,直到工作后才买,也是很好玩,做东西也很简单。

  • Ticwatch E 出门问问团队出的一款智能手表,支持独立接打电话,具有NFC功能,能闪付,目前支持刷北京和深圳的地铁,缺点是手表续航时间太短了,像我正常使用,早上6点从充电器上摘下配带,下午进行30分钟的跑步,这样到晚上10点睡觉,大约剩60%电量。

  • 佳能700D.

软件

  • chrome 浏览器中的佼佼者,速度快还可以安装各种插件,最强大的功能是可以同步书签、配置、浏览记录、密码等等。
  • Typora markdown编辑器,在撰写的同时实现了实时预览,界面也很简洁。
  • Shad/ow/socks(防止屏蔽) 这是X樯软件,不多说,需要的可以在这里使用:我的科学上网方式分享——使用搬瓦工服务器科学上网 
  • Xshell 5 ssh远程连接软件,功能强大。
  • Git

Wish List

  • Macbook pro
  • Bose QC35降噪耳机
  • 感动牌800D单反
  • Kindle Voyage

 

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 我的装备(硬件软件)介绍 (http://blog.lxx1.com/2900)

如果博客对您有帮助,请给我 打赏


我的装备(硬件软件)介绍,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2900/feed 2
树莓派搭建指示灯自动显示在空间站的人数 http://blog.lxx1.com/2861 http://blog.lxx1.com/2861#comments Tue, 04 Jul 2017 08:00:03 +0000 http://blog.lxx1.com/?p=2861 树莓派搭建指示灯自动显示在空间站的人数,首发于科技爱好者博客

本文翻译自:https://www.raspberrypi.org/ 使用Python requests模块访问People in Space API,并创建一个指示灯,以显示当前在空间中的人数。 2015年12月15日,英国欧空局宇航员蒂姆·帕克(Tim Peake)起飞到国际空间站,他将在那里工作六个月。作 ...

树莓派搭建指示灯自动显示在空间站的人数,首发于科技爱好者博客

]]>
树莓派搭建指示灯自动显示在空间站的人数,首发于科技爱好者博客

本文翻译自:https://www.raspberrypi.org/

使用Python requests模块访问People in Space API,并创建一个指示灯,以显示当前在空间中的人数。

2015年12月15日,英国欧空局宇航员蒂姆·帕克(Tim Peake)起飞到国际空间站,他将在那里工作六个月。作为Astro Pi项目的一部分,Tim还将在太空中进行科学研究,他还将使用由两名Raspberry Pis学生学习的Python代码进行实验。通过这个资源,你可以保持蒂姆和他的宇航员在国际空间站上的数量。

浏览太空人物API

API代表应用程序编程接口。一种形式的API是一种Web API,可用于从在线提供的服务中提取数据。一些API对公众开放,免费提供数据; 其他API需要登录才能访问它们,这可以通过应用程序获取,或者可以作为服务提供给客户收费。

通过API提供数据的目的是允许人们访问它以供自己使用或使用它来构建程序。一些API提供业务关键数据集或其他重要数据,例如天气,金融活动,甚至提供访问Twitter流或Flickr的照片等。其他API只是为了好玩,如口袋妖怪API星球大战API冒险时间API。虽然这些API是有趣的,但它们仍然可以用于有趣和有用的方式。您可以在Minecraft中建立一个宠物小精灵游戏,或在冒险时间内建立关于角色的问答游戏!

对于这个项目,您将使用Nathan Bergey免费维护和提供的People in Space API

  1. 首先打开网页浏览器并浏览以下网址:
    http://api.open-notify.org/astros.json
  2. 您应该看到一个白色页面,其中包含一些如下所示的文本:

    您正在查看API提供的数据。这是访问数据的手动方法。

  3. 观察所提供的数据。它应该看起来像这样:
    {
      "message": "success",
      "number": 6,
      "people": [
      {
        "craft": "ISS",
        "name": "Mikhail Kornienko"
      },
      ...
    }

    该数据的格式称为JSON(发音为“Jason”),代表JavaScript Object Notation。虽然这个名字是指JavaScript的编程语言,但它是一种标准的数据交换格式,可以在语言和应用程序之间移植。如果您熟悉Python的dictionary数据结构,您将看到相似之处。在其他语言中,嵌套数组可以以相同的方式使用。

  4. 请注意,API提供了三个数据:messagenumber,和people
    • message 是包含该单词的单个字符串 success
    • number 是整数值 6
    • people 是一群宇航员
  5. people阵列中,有六个对象。每个对象包含两个数据:
    • craft 是宇航员在哪里的航天器
    • name 是宇航员的全名

使用Python的请求模块

现在您将使用requestsPython中的模块来访问API。

  1. 从主菜单中打开Python 3:
  2. 在Python shell中,键入以下行,然后按Enter键
    >>> import requests

    (注意>>>不是键入,而是表示shell输入)

    您正在使用Python shell的REPL(Read-Eval-Print Loop),这意味着每一行都会立即执行,而不是写入一个文件,保存并一次运行所有命令

  3. 现在创建一个包含API的URL作为字符串的变量:
    url = "http://api.open-notify.org/astros.json"
  4. 输入以下内容,向API发出请求:
    r = requests.get(url)
  5. 现在只需键入r并按Enter键 ; 这与输入print(r)文件相同。REPL允许您以这种方式快速检查对象。您现在应该看到以下内容:
    <Response [200]>

    这表示r包含一个Response类型对象,并显示200。这是请求的状态代码,这意味着“成功”。其他状态代码包括404,这意味着“找不到文件”和500– “服务器错误”。

  6. 现在进入help(r)。这显示对象的docstring(文档字符串)Response。你应该看到:
    Help on Response in module requests.models object:
    
    class Response(builtins.object)
     |  The :class:`Response <Response>` object, which contains a
     |  server's response to an HTTP request.
     ...
  7. 观察docstring的部分Data descriptors defined here。您将看到可用属性及其描述的列表,包括:
    • apparent_encoding
    • content
    • is_permanent_redirect
    • is_redirect
    • links
    • ok
    • text

    这些属性本质上是一个对象内可访问的变量。例如,r.ok是包含请求(TrueFalse)的成功状态的变量。

  8. 通过在REPL中输入这些属性来尝试访问这些属性:
    >>> r.ok
    True
    >>> r.is_redirect
    False
    >>> r.text
    '{\n  "message": "success", \n  "number": 6...

    你会看到r.text似乎包含你需要的数据。然而,这被提供为使其难以使用的字符串。

  9. 观察Methods defined heredocstring 的部分,其中包括:
    json(self, **kwargs)
        Returns the json-encoded content of a response, if any.

    这可以让您以JSON格式访问URL请求的内容,这将使其更有用。

    一种方法是属于一个对象的函数。它以与属性相同的方式访问,但被称为像()例如函数r.json()

  10. 输入r.json()。你应该看到:
    {'number': 6, 'message': 'success', 'people': [{'craft': 'ISS', 'name': 'Mikhail Kornienko'}, {'craft': 'ISS', 'name': 'Scott Kelly'}, {'craft': 'ISS', 'name': 'Oleg Kononenko'}, {'craft': 'ISS', 'name': 'Kimiya Yui'}, {'craft': 'ISS', 'name': 'Kjell Lindgren'}, {'craft': 'ISS', 'name': 'Sergey Volkov'}]}
  11. 将其另存为变量:
    j = r.json()
  12. 检查新变量的数据类型 type(j)
    >>> type(j)
    <class 'dict'>

    你会看到这j是一个字典,它是Python中非常有用的数据结构,基本上与JSON格式相同。

  13. 要访问字典中的数据,请按以下名称对其进行索引[]
    >>> j['number']
    6

    而已!

  14. 回顾所使用的命令并将其放在一起,需要以下代码来检索空间中的人数:
    import requests
    
    url = "http://api.open-notify.org/astros.json"
    
    r = requests.get(url)
    j = r.json()
    n = j['number']
    print(n)

添加LED

接下来,您将连接一些LED到Pi的GPIO引脚,并使用它们来代表一个人在空间。

  1. 首先使用公母对跳线将Pi的接地引脚连接到面包板,并添加一个电阻将其连接到地面导轨上:

     

  2. 现在将单个LED连接到您的面包板,将较短的腿(阴极)连接到地面导轨,并将较长的腿(阳极)放置在面包板的中间。然后使用公母对跳线将LED的行连接到Pi上的GPIO引脚2:

  3. 从GPIO Zero库导入LED类开始:
    >>> from gpiozero import LED
  4. LED在引脚2上创建一个对象的实例:
    >>> led = LED(2)
  5. 尝试点亮LED:
    >>> led.on()

    LED现在应该点亮!

  6. 将第二个LED连接到引脚3:

  7. 以相同的方式将其余LED(总共10个)连接到连续的引脚(4,14,15,17,18,22,23,27)上:

  8. 确保您以前使用的针脚2上的LED已关闭:
    >>> led.close()
  9. 创建您使用的引脚号的列表:
    >>> pins = [2, 3, 4, 14, 15, 17, 18, 27, 22, 23]
  10. 使用这些引脚号创建LED列表:
    >>> leds = [LED(pin) for pin in pins]

    这被称为列表理解:在一行中生成列表而不是使用传统的循环。

  11. 检查leds列表:
    >>> leds
    [<gpiozero.LED object on pin=2, is_active=False>,
    <gpiozero.LED object on pin=3, is_active=False>,
    <gpiozero.LED object on pin=4, is_active=False>,
    <gpiozero.LED object on pin=14, is_active=False>,
    ...]

    这将打印列表中每个对象的表示,显示一些有用的信息。

  12. leds通过将它们全部打开来测试列表:
    >>> [led.on() for led in leds]

    这是列表理解的另一个用途:在列表中的每个项目上运行命令

  13. 关闭它们:
    >>> [led.off() for led in leds]

    提示:使用Alt + P(上一个)完成命令历史记录并编辑输入的最后一个命令。

制作指示标

现在,您将使用LED显示当前在空间中的人数。

  1. 现在是把它们一起放在一个文件中的时候了。点击File > New File
  2. 将您的文件保存为 astronauts.py
  3. 首先导入您使用的库:
    from gpiozero import LED
    import requests
  4. 添加LED设置:
    pins = [2, 3, 4, 14, 15, 17, 18, 27, 22, 23]
    leds = [LED(p) for p in pins]
  5. 添加requests代码:
    url = "http://api.open-notify.org/astros.json"
    
    r = requests.get(url)
    j = r.json()
    n = j['number']
  6. 现在,而不仅仅是打印n,您可以使用它来确定应该点亮多少个LED。考虑以下循环:
    for led in leds:
        led.on()

    这允许您依次访问每个LED。但是,我们需要知道什么时候我们应该停止这样做。

  7. 您需要能够比较n每个LED号码(序列中的顺序,而不是GPIO引脚号)的数字。您将需要使用该enumerate功能按顺序为每个LED分配一个数字。enumerate通过在shell中尝试它(而不是文件)来查看它的工作原理:
    >>> list(enumerate(leds))
    [(0, <gpiozero.LED object on pin=2, is_active=False>),
     (1, <gpiozero.LED object on pin=3, is_active=False>),
     (2, <gpiozero.LED object on pin=4, is_active=False>),
    ...]

    您可以看到,它提供了与索引号相关联的LED列表,从0

  8. 由于enumerate返回两个值,索引号和LED对象,您可以循环使用它并通过使用访问这两个值for i, led in enumerate(leds)。将以下循环添加到文件中的代码中:
    for i, led in enumerate(leds):
        if n > i:
            led.on()
        else:
            led.off()
  9. 保存并运行您的代码。假设API返回6,你应该有6个LED点亮!
  10. 您将需要定期检查API的变化。确保您没有对API提出太多请求非常重要。首先通过sleep在其他文件的顶部添加导入:
    from time import sleep
  11. 现在将循环中的代码requestsLED代码进行while循环,使其持续运行并不断更新LED:
    while True:
        r = requests.get(url)
        j = r.json()
        n = j['number']
        for i, led in enumerate(leds):
            if n > i:
                led.on()
            else:
                led.off()
        sleep(60)  # update every minute

    确保最后添加睡眠,所以它在API调用之间等待60秒钟,以便每分钟检查一次结果。

  12. 运行代码,它应该总是显示当前的空间人数。让它运行,它应该在将来更新,因为宇航员交付到和从国际空间站。

尝试用木头或纸板制作自己的指示器:

显示宇航员名字

最后,学习从API调用中获取宇航员名字。

  1. 当你最初检查了JSON对象时,它显示了所有的空间的人的名字以及数字。返回到Python shell并j['people']从字典检查:
    >>> type(j['people'])
    <class 'list'>
    >>> j['people']
    [{'craft': 'ISS', 'name': 'Mikhail Kornienko'}, {'craft': 'ISS', 'name': 'Scott Kelly'}, {'craft': 'ISS', 'name': 'Oleg Kononenko'}, {'craft': 'ISS', 'name': 'Kimiya Yui'}, {'craft': 'ISS', 'name': 'Kjell Lindgren'}, {'craft': 'ISS', 'name': 'Sergey Volkov'}]
  2. 你可以看到这j['people']是一个列表。现在进一步检查清单:
    >>> len(j['people'])
    6
    >>> type(j['people'][0])
    <class 'dict'>
    >>> j['people'][0]
    {'craft': 'ISS', 'name': 'Mikhail Kornienko'}
  3. 您可以看到该列表包含6个元素,并且每个元素是另一个字典。剩下的只是访问字典中的各个元素:
    >>> type(j['people'][0]['craft'])
    <class 'str'>
    >>> j['people'][0]['craft']
    'ISS',
    >>> type(j['people'][0]['name'])
    <class 'str'>
    >>> j['people'][0]['name']
    'Mikhail Kornienko'
    >>> j['people'][1]['name']
    'Scott Kelly'
  4. 尝试打印所有的宇航员名字:
    >>> for astronaut in j['people']:
            print(astronaut['name'])
    
    Mikhail Kornienko
    Scott Kelly
    Oleg Kononenko
    Kimiya Yui
    Kjell Lindgren
    Sergey Volkov
  5. 现在返回你的代码,并在保存后添加一行来保存宇航员列表作为变量n
    n = j['number']
    astronauts = j['people']
  6. 然后在循环开始之前添加一行以关闭所有LED:
    [led.off() for led in leds]
  7. if n > i声明内,之后led.on(),添加两行打印宇航员姓名,然后睡眠1秒,以便在每个光线之间暂停:
    if n > i:
        led.on()
        print(astronauts[i]['name'])
        sleep(1)
  8. 再次运行代码,LED一次一个,同时打印出宇航员的姓名。

接下来是什么?

现在,您已经创建了一个带LED指示灯的People in Space Indicator,尝试扩展您的项目:

  • 使用带有至少9个LED的附加板,而不是单个LED
  • 使用LED或LCD显示屏滚动宇航员的名称(例如Sense HATDisplay-O-Tron HAT
  • 使用PyGame Zero在屏幕上显示宇航员的数量或名称
  • 使用requests另一个API来查找有关每个宇航员的信息

重要的日子

请注意国际空间站航天员计划交付和离职的以下日期:

  • 201512月11日 – Oleg Kononenko,Kimiya Yui和Kjell Lindgren离开
  • 201512月15日 – 蒂姆·皮克,尤里·马伦琴科和蒂莫西·科普拉抵达
  • 20163月18日 – 阿列克谢Ovchinin,Oleg Skripochka和Jeffrey N. Williams到达
  • 20165月30日 – Anatoli Ivanishin,Takuy​​a Onishi和Kathleen Rubins抵达
  • 20169月30日 – Sergey N. Ryzhikov,Andrei Borisenko和Robert S. Kimbrough到达
  • 201611月30日 – Oleg Novitskiy,Thomas Pesquet和Peggy Whitson抵达

树莓派搭建指示灯自动显示在空间站的人数,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2861/feed 2
坚持写作的意义是什么? http://blog.lxx1.com/2852 http://blog.lxx1.com/2852#comments Mon, 03 Jul 2017 06:37:37 +0000 http://blog.lxx1.com/?p=2852 坚持写作的意义是什么?,首发于科技爱好者博客

我从2014年开始写博客,至今已经坚持写了近3年。博客的热潮已经过去,好多独立博客已经不再更新或者关闭,博客网站也纷纷走向落幕,看到这种景象,不仅感叹不已,事物总是在不断的发展中,新生的事物不断冒出来,旧事物在新事物的取代下不断消融,渐渐走 ...

坚持写作的意义是什么?,首发于科技爱好者博客

]]>
坚持写作的意义是什么?,首发于科技爱好者博客

我从2014年开始写博客,至今已经坚持写了近3年。博客的热潮已经过去,好多独立博客已经不再更新或者关闭,博客网站也纷纷走向落幕,看到这种景象,不仅感叹不已,事物总是在不断的发展中,新生的事物不断冒出来,旧事物在新事物的取代下不断消融,渐渐走出人们的视野。作为坚持写博客3年的博主,也来谈谈为什么一直在坚持,为什么要一直坚持下去。

一、记录学习过程,分享我的知识

博客上写的最多的文章是关于技术方面的,每当我在编程、硬件开发设计中遇到问题,我都会尝试自己解决,采取的主要手段是在互联网上搜索,查找解决这个问题的办法。解决这个问题经常要花费大量的时间,需要综合好几篇文章,才能找到正确的解决方法。遇到的问题解决了,如果不写出来并分享,下次我遇到时,还得花费时间和精力查找,其他人可能也需要同样的时间去解决;如果我将验证过的解决方法通过博客分享出来,其他人遇到问题,只需要很少的时间就可以解决了。

不比其他论坛等,博客文章的字句都是经过斟酌写出来的,可以保证文章的质量。一篇博客文章为了让别人也能详细的了解,需要我深入分析问题,最后解决问题,在写出来的同时,也会总结经验,再提高自己的同时也方便了他人,可谓一举两得。

二、培养主动学习的兴趣

要坚持写博客,就要不断的学习,同时为了“有得”可写,就要不断的接触新技术、新理念。博客会驱动我接触新技术,再看别人博客的同时,也会让我找到下一步要学习的方向。为了将问题讲清楚,就需要了解各个点,然后才能动笔写作,这也是驱动我学习的一个方面。再写博客的同时,看到自己文章帮助了那么多的人,会提高我学习的热情,从而驱动我进步。

三、带动学习建站相关的知识

微信公众号、知乎专栏以及间书等等写作平台的成立,给写作的人带来了很大的方便。但是博客与这些写作平台最大的不同在于,博客的一切都需要自己动手。例如,博客的域名、网站服务器选择、博客环境搭建、https证书部署、网站性能提高、阅读体验的优化、防止黑客攻击等等,这些都需要自己动手去搞。在自己动手的同时,亲身感受了解了其中的知识,掌握了最基层,也是最实用的技术。

而且,看着自己一步步搭建起来的博客,内心也是充满了成就感。在维护优化中,凝聚了我的精力,看着博客越来愈高的访问量、博客真真切切对他们的帮助以及他们对博客的感谢,感到自己的付出的精力和时间没有白费,都用在了实事上。

四、锻炼思考写作的能力

遇到问题可以通过搜索、思考来解决,但是能能解决不一定代表理解了,通过将解决问题的思路、方法通过博客写出来,可以加深自己的理解。在做高数题时,可以解出正确的答案,但是不一定能给别人讲解明白,写博客就是为了解决这个问题,坚持写,就可以锻炼思考的能力。况且,也能锻炼写作的能力,这样遇到文档编写的任务,就能够可以出色的完成任务。

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: 坚持写作的意义是什么? (http://blog.lxx1.com/2852)

如果博客对您有帮助,请给我 打赏


坚持写作的意义是什么?,首发于科技爱好者博客

]]>
http://blog.lxx1.com/2852/feed 5