精华内容
下载资源
问答
  • 一对一课程的特点及优势
    千次阅读
    2020-09-22 12:25:26

    1.1 Node.js,一个让 JavaScript 从丑小鸭变成白天鹅的框架

    可能很多读者会感到奇怪,本系列课程主要介绍的是 Electron,为什么一开始要提到 Node.js 和 JavaScript 呢?它们是什么关系呢?别急,听我慢慢道来。

    相信做 JavaScript 开发的读者对 Node.js 不陌生,Node.js 诞生于 2009 年,类似于 ASP.NET,是用来开发服务端程序的框架,使用的编程语言是 JavaScript。基于 Node.js 的 Web 框架非常多,比较常用的有 Express,还有 hapi.js,可能有些读者对 hapi.js 感到陌生,这个框架在国内用的比较少,不过在国外比较流行,hapi.js 是沃尔玛技术团队开发的框架,比较适合做 API 服务。

    Node.js 给许多开发者的第一印象是用来开发 Web 应用的,然而事实上,正是由于 Node.js 的存在,JavaScript 才摘下了“只能开发 Web 应用”的帽子。Node.js 使得 JavaScript 可以像 Python、Java 一样在终端(或 Windows 命令行)执行,它还提供了大量的 API,利用这些 API,JavaScript 几乎可以做任何事情。从这个角度看,Node.js 算是成就了 JavaScript,帮助 JavaScript 从一个只能开发 Web 前端应用的编程语言一跃成为全栈开发的超一流语言。

    Node.js 支持扩展功能,这些扩展成为模块,模块可以直接使用 JavaScript 编写,也可以使用 C++、Go 等语言在本地编写。目前已经有很多依赖 Nod

    更多相关内容
  • 媒体与认知实验课程内容媒体与认知实验主要借鉴国内外著名大学多媒体实验教学课程特点结合电子系在该领域研究的基础优势和创新性成果有针对性的将信息认知与智能系统研究所的一些已有科研成果转化为教学实验课中的...
  • 本文通过分析浏览器/服务器结构的特点并结合企业仓储管理的实际情况,简要介绍了系统各功能模块数据库的设计,着重讨论了用ASPNET 技术和SQLServer2005开发企业仓库管理系统时的数据库访问技术和动态网页制作技术...
  • 基于这样的认知:经济的发展模式长期来看一定是处于种温和的通胀中的,所以只要大方向选择是的,长期持有,三年左右收益率达到50%的基金其实不在少数。基于投资之前一定要认真理解(投资而不是投机),结合简七...

    了解了很多种资产形式以外,觉的基金才是时候上班族最合适的投资方式,先玩儿明白基金再好好玩儿股票吧。基于这样的认知:经济的发展模式长期来看一定是处于一种温和的通胀中的,所以只要大方向选择是对的,长期持有,三年左右收益率达到50%的基金其实不在少数基于投资之前一定要认真理解(投资而不是投机),结合简七理财的课程梳理下基础知识。

    基金就是一种组织大家把钱集合在一起交给专业人士打理的一种间接投资的投资方式。特征是是:利益共存、风险共担以及间接投资。有三个优势:

    • 更专业:专业的人来打理资产,普通人可以通过基金经理以专业的身份去参与接触不到的投资,例如买美股之类的吧。可以大大弥补我们的投资能力
    • 更分散:同样的钱,能投资多种资产类型,分散风险。不仅能进入货币市场,还有债券、股票之类的,而且大家共担风险共享收益。
    • 更独立:基金作为一个独立主体,需要单独核算,我感觉类似一个单独的公司吧,投资人的钱独立核算,资金必须托管,基金管理人按照规则操作

    其实普通人能接触到的基金也就是公募基金,毕竟咱也不是什么土豪,有啥家族信托的。所以主要以公募基金为核心学习(以下提到的基金都是公募基金)。
    在这里插入图片描述

    基金投资了什么

    按照基金的投资资产、投资地域以及投资策略来详细了解下基金到底投资了什么。也能对各种基金的分类有个详细认识,这些部分确实是干货啊,挑基的时候很有帮助。
    图片来自简七

    按照投资资产分类

    按照投资资产的不同主要有这几类:货币基金、股票基金、债券基金以及混合基金。基于中国股市的发展潜力,其实我更愿意买股票基金,现在持有的几个也都是股票基金。希望大盘到3500点啊!

    货币基金

    货币基金是专门投向风险小的货币市场的基金,例如:国债、央行票据、商业票据、银行定期存款以及同业存款等,并且投资期限在1年以内。例如余额宝,一般有三个特点:安全性高、一般不会亏损以及收益高于活期存款。按照余额宝算,应该是银行活期的15倍左右吧。一般年化大概在3%点多左右。流动性高,用于日常现金管理

    债券基金

    债券基金80%要投资到债券上,少量投资于股票。包括国债、金融债以及企业债等。债券基金收益高于货币基金,当然风险也更大一些。按照分类有这么几类:

    • 纯债基金:完全投资于债券。
    • 普通债券基金:80%以上投资于债券,又分为一级债基和二级债基,其中一级债基投资范围是:债券、参与一级市场(新股申购、增发),二级债基的投资范围是:债券、参与一级市场(新股申购、增发)、买卖上市股票。
    • 可转债基金:可以将投资对象从债券转到股票。股债双重性质的债券。

    三者的风险比较是:纯债<一级债基<二级债基<可转债基金

    一级市场,也称发行市场或初级市场,是资本需求者将证券首次出售给公众时形成的市场。它是新证券和票据等金融工具的买卖市场。该市场的主要经营者是投资银行、经纪人和证券自营商(在我国这三种业务统一于证券公司)。它们承担政府、公司新发行的证券以及承购或分销股票。
    二级市场是指在证券发行后各种证券在不同的投资者之间买卖流通所形成的市场,又称流通市场或次级市场。比如上海证券交易所和深圳证券交易所就属于二级市场。在二级市场上销售证券的收入属于出售证券的投资者,而不属于发行该证券的公司

    当然债券基金还可以依据所持债券长短划分,短期是指一年内的,长期是指一年以上。

    股票基金

    股票基金持有股票不低于80%,可以有不同的分类方式,按照投资方向细分有:消费行业、医疗行业、军工行业等。按照投资风格又区分为:

    • 大盘,也就是价值型
    • 中盘:也就是成长型
    • 小盘:也就是平衡型

    我个人比较看好大盘里的实力国企及银行等。白酒之类的可以算作风险投资吧。大盘好的行情下,3个月收益能达到30%多,记录下,2019年的春天。

    混合基金

    混合基金没有明确的投资比例,一般搭配:股票、债券以及货币市场,这几种按照不同比例调配。

    分类比例
    偏股型投资股票占比50%-70%
    偏债型债券比例配置高些
    股债平衡型股债比例相对均衡在40%-60%间
    偏灵活配置型股票债券的分配按照市场状况调整

    其它还有些黄金基金、石油基金以及房产信托基金,就不需要太关注啦。

    按照投资地域分类

    以上说的都是一些国内投资,说说咱一般做不到的海外投资。之前一直搞不懂QDII是啥玩意儿。

    • QDII基金:也就是合格境内机构投资者。主要投资美股和亚太股,可以委托其投资境外资产。
    • 香港互认基金:内地投资者可以买获得国家许可的香港成立的基金,这些基金的投资范围当然不仅仅是港股。

    包括以下这几种目前:
    在这里插入图片描述

    按照投资策略分类

    按照投资策略分类主要有主动基金和被动基金

    • 主动基金:基金经理来研究,确定投资组合。要选择好的基金经理是关键
    • 被动基金:也就是指数基金,投资水准比较稳定,同类型会趋于相同并接近指数表现,更换基金经理影响不大。

    个人更倾向于买被动基金,按照调研和策略进行调整比较靠谱。

    指数基金俗称“一揽子股票”,其特点是风险相对可控,收益相对较高。 如:上证50指数基金 ,沪深300指数基金,中证800指数基金

    总结

    主要了解了些基金的分类,再也不会迷迷糊糊搞不懂该买什么基了,也知道了一些陌生的概念,例如QDII,最后真心觉得基金靠谱,股票承担不起风险,P2P又暴雷(团贷网),银行理财收益又低,房产呢也不再是能获得高收益的利器,只能说保值吧。要想追求收益相对高而且不用花太多时间去关注又不用承担太多风险,基金倒是个靠谱的选择,虽说现在那只股票基还亏着,不过长期持有还是可以有的。目前设定的策略是:短期流动资产用货币基金覆盖,债基60%,股基40%来配置固定存款。

    展开全文
  • 5G移动通信技术初级课程

    千人学习 2020-11-10 11:07:38
    三、本课程主要内容 本课程包括八个方面的内容: 1、从1G到5G 在这部分主要讲述了蜂窝移动通信系统的基本概念,1G、2G、3G、4G和5G移动通信系统的特点、发展演变的过程,以及5G的三大应用场景—eMBB(增强移动...
  • 我们都知道Python目前是市面上很火且很多人选择的一门编程语言,随着人工智能,大数据分析明显兴起,也让python水涨船高,那么python具有哪些优点或者特点,让我们喜欢选择它作为入门语言来学习?python优势:1、...

    我们都知道Python目前是市面上很火且很多人选择的一门编程语言,随着人工智能,大数据分析明显兴起,也让python水涨船高,那么python具有哪些优点或者特点,让我们喜欢选择它作为入门语言来学习?

    python优势:

    1、python 简单易学。

    Python是一种面向对象的语言。它的类模型支持多态、运算符重载和多重继承等高级概念,并且以Python特有的简洁的语法和类型为背景,OOP十分易于使用。事实上,即使你不懂这些术语,仍会发现学习Python比学习其他OOP语言要容易得多。 Python同时也是一门功能强大完善的通用性语言,对比其他语言来说,Python要更加简单,上手非常容易。 没有C语言那种面对过程的麻烦。

    2、python 免费开源

    Python的使用和分发是完全免费的。就像其他的开源软件一样,例如,Tcl、Perl、Linux和Apache。你可以从Internet上免费获得Python的源代码。你可以不受限制地复制Python,或将其嵌入你的系统或者随产品一起发布。实际上,如果你愿意的话,甚至可以销售它的源代码。 甚至,用户使用Python进行开发或者发布自己的编写程序时,无需支付任何的费用,也不用担心版权的问题,即便是商业用途也是免费的。

    3、python 帮助文档多

    虽然是免费开源,我们都知道免费的话,很多东西不能得到一定的支持,但是Python不同,由于学习的学员基数大,对于用户需求这块,如帮助文档,疑难问题,商业软件方案等等这些都是有很多人大佬级人物来解答,或者进行一定的支持。当然,更多的需要自己的去亲自体会才能感受到。免费也是有后备支持。

    4、python 可移植性

    Python的标准实现是由可移植的ANSI C编写的,可以在目前所有主流平台上编译和运行。例如,如今从掌上电脑(PDA)到超级计算机,随处可见 Python的运行。Python可以在下列平台上运行(这里只是部分列表):

    Linux和UNIX系统

    微软Windows(所有现代版本)

    Mac OS(包括OS X 和经典版)

    BeOS、OS/2、VMS和QNX

    实时操作系统,例如VxWorks

    Cray超级计算机和IBM大型机

    运行Palm OS、PocketPC和Linux的PDA

    运行 Symbian OS和Windows Mobile 的移动电话

    游戏终端和iPod

    运行谷歌安卓系统和苹果iOS系统的平板和智能手机

    以及更多

    除了语言解释器本身以外,Python发行时自带的标准库和模块在实现上也都尽可能地考虑到了跨平台的移植性。此外,Python程序自动编译成可移植的字节码,这些字节码在已安装兼容版本Python的平台上运行的结果都是相同的。

    Python程序的核心语言和标准库可以在Linux、Windows和其他带有Python解释器的平台上无差别地运行。

    5、python 强大丰富的库,功能强大

    从第三点我们知道有很多大佬级人物不断的完善python,当然它的库支持也随之强大,由于它的成长是社区型成长,所以在不断的裂变中成长,你能想到的它有,你没有想到的它也有。

    6、python 相对简单易用

    同其他语言(如C++、Java和C#)相比,Python编程对大多数用户来讲出奇得简单。要运行Python程序,你只需简单地键入Python程序并运行就可以了。不需要其他语言(如C或C++)所必需的编译和链接等中间步骤。

    当然,还有其他的优势,比如可拓展性也比较强的,就不一一的举例的,好处多多,可相对python的缺点来说的话,其实也不能完全说缺点,必然有好处,就有一定的劣势,但是都能通过python优势来进行弥补,执行速度上不如JAVA,C,LUA等语言,由于程序是直接执行,不需要进行编译执行,所以在加密方面也有相应的难度。

    以上就是python 哪些优点和特点的全部内容, 如果需要了解更多的python教程关注

    该文章属于:猴子游戏编程原创

    转载请注明标题:python 哪些优点和特点?为什么那么多人选择-猴子技术宅

    转载请注明出处:https://www.ssfiction.com/pythons/530884.html

    展开全文
  • LabVIEW在《电路分析基础》课程中的仿真做了研究,介绍了利用LabVIEW软件进行电路仿真的方法与优势,并以微积分电路、RC低通滤波器三相电路的仿真为例详细阐述了其实现方法,具有编程效率高、实现简单、界面友好的...
  • 基于Android+JavaEE平台的校讯通系统利用...基于Android+JavaEE平台的校讯通系统具有客户端可随时随地查询信息,方便快捷的特点,又继承了JavaEE框架后台数据的安全有效管理的优势,是种较好的移动办公解决方案。
  • 所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望您有所帮助,文章中不足之处也请海涵。在这个喧嚣的时代,很多技术或概念会不断兴起,我希望你能沉下心来去学习,不要...

    欢迎大家来到“Python从零到壹”,在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界。所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望对您有所帮助,文章中不足之处也请海涵。

    Python系列整体框架包括基础语法10篇、网络爬虫30篇、可视化分析10篇、机器学习20篇、大数据分析20篇、图像识别30篇、人工智能40篇、Python安全20篇、其他技巧10篇。您的关注、点赞和转发就是对秀璋最大的支持,知识无价人有情,希望我们都能在人生路上开心快乐、共同成长。

    本文参考了作者和许老师CSDN的文章,真心推荐大家去学习。

    同时,作者新开的“娜璋AI安全之家”将专注于Python和安全技术,主要分享Web渗透、系统安全、人工智能、大数据分析、图像识别、恶意代码检测、CVE复现、威胁情报分析等文章。虽然作者是一名技术小白,但会保证每一篇文章都会很用心地撰写,希望这些基础性文章对你有所帮助,在Python和安全路上与大家一起进步。




    一.初聊Python

    为什么要学习Python?
    在学习Python之前,你不要担心自己没基础或“脑子笨”,我始终认为,只要你想学并为之努力,就能学好,就能用Python去做很多事情。在这个喧嚣的时代,很多技术或概念会不断兴起,我希望你能沉下心来去学习,不要急于求成,一步一个脚印。当你把某个技术学好、学精后,还是能做一些事情的,甚至能找到喜欢的工作或完成实践项目。

    程序语言没有最好,只有最适合。作为一名初学者,我非常推荐你学习Python,为啥?一方面是因为它具有语法清晰、代码友好、易读性高的特点,同时Python拥有强大的第三方库函数,包括网络爬取、数据分析、可视化、人工智能等;另一方面Python既是一门解释性编程语言,又是面向对象的语言,其操作性和可移植性高,被广泛应用于数据挖掘、信息采集、人工智能、网络安全、自动化测试等领域。甚至,很多小学生、高中课程和计算机二级也都陆续增加了Python。

    在这里插入图片描述

    Python优势
    Python最大的优势在于效率。有时候程序员或科研工作者的效率比机器的效率更重要,对于很多复杂性的功能,使用更加清晰的语言能给程序减少更多的负担,从而大大增强程序的质量,其易学性和扩展性也能让新手很快上手。虽然Python底层运行速度要比C语言慢,但Python清晰的结构能解放程序员的时间,同时很方便的和其他编程语言代码(如C语言)融合在一起。

    所以,从来没有一种编程语言可以像Python这样同时扎根在这么多领域,并且Python支持跨平台操作,也支持开源,拥有强大的第三方库。尤其随着人工智能的持续火热,Python在IEEE近几年发布的最热门语言中多次排名第一,越来越多的程序爱好者、科技关注者也都开始学习Python。

    在这里插入图片描述

    Python学习建议
    在Python学习过程中,不要觉得你的底子薄或者之前没接触过,就想放弃,很多人还没起跑就选择退赛。我想,只要沉下心来,肯下功夫,就能学好。在学习过程中,一定要去写代码、写代码、写代码,只写真正动手去实践,才能慢慢积累。

    同时,编写代码过程中出错也是家常便饭,我现在写Python代码每天不出点错,心里都躁得慌,所以遇到错误,学会百度、谷歌去解决真的非常重要,它也是你学习能力的一种提升,实在找不到错误,可以去开源论坛、社区、学习群里提问,也欢迎来公众号或CSDN找我。

    接下来我给出许老师推荐的Python程序员成长路线图,包括:基础语法–>语感训练–>课题练习–>分方向继续学习–>中级程序员–>拓展深度和广度–>高级程序员。

    在这里插入图片描述

    这里,给出我学习Python的一些历程和技巧。我最早接触Python是2013年,主要是因为研究生方向是自然语言处理,需要通过Python抓取数据并进行分析,所以就选择了它。那些年Python的资料很少,也没这么火热,但也一直坚持着,具体建议如下:

    • 先把环境安装,开始编写第一个Python代码,别再去等明天了
    • 学习过程中切勿看视频(书籍),喝着奶茶,就是一天,一定要动手敲代码啊
    • 通常先了解Python基础语法,推荐MOOC北理工嵩天老师的视频和runoob语法,当然B站和CSDN上也有很多免费资料,大家可以去选择
      https://www.icourse163.org/course/BIT-268001
      https://www.runoob.com/python/python-intro.html
    • 基础语法大致掌握后可以尝试学习Python网络爬虫,因为不论是数据分析、机器学习、渗透测试等,都会涉及到爬虫技术,只有拥有自己的语料,才能处理更多问题。 爬虫方面不用太深入,掌握两门技术即可
      Urllib、Requests、BeautifulSoup、XPath、Selenium、Scrapy、分布式爬虫
    • 接下来学习Python可视化分析(词云)、微信操作、邮箱发送等功能,这些知识能有效提高你的编程兴趣
    • 人工智能方向:包括机器学习(回归 | 聚类 | 分类)、深度学习(TensorFlow | Keras | Pytorch)学习,建议结合实际科研或项目进行深入研究
    • 图像识别方向:包括图像处理、OpenCV、模式识别、机器学习、深度学习、目标检测学习,也建议结合实际科研或项目进行深入研究
    • 其他方向学习:Web网站开发、网络安全、自动化测试、应用程序编写

    学习路上没有捷径,只有坚持,但你却能通过Python不断提升你的学习兴趣,做一些喜欢的事,喜欢上这门语言。最后给出当年大三学习Python时激励自己的话:
    If not now, when? If not me, who?
    如果不是为了自己奋斗,又是为谁;如果不是现在奋斗,什么时候开始呢?



    二.Python简介及安装入门

    1.Python简介

    Python是荷兰人Guido van Rossum在1989年开发的一种脚本新解释语言,它是一种面向对象的解释型计算机程序设计语言。Python是纯粹的自由软件,其语法简洁清晰,特色之一是强制使用空白符(White Space)作为语句缩进。由于Python具有丰富和强大的库,常被昵称为胶水语言。

    在这里插入图片描述

    Python作为热门语言,具有以下特点:

    • 语法清晰,代码友好,易读性好
    • 应用广泛,具有大量的第三方库支持,尤其是机器学习、人工智能相关库
    • Python可移植性强,易于操作各种存储数据的文本文件和数据库
    • Python是一门面向对象语言,支持开源思想
    • 能在多种功能、多种平台上撰写脚本及快速开发

    作者和许老师观点一样,不建议初学者上来就选择像Anaconda或PyCharm等集成工具,在我看来它们提供的便利不如给用户学习带来的麻烦多。至少,在开始第一个星期不要使用IDE。对于Python这样一种解释型的脚本语言,一款趁手的编辑器就足够。

    • 我们需要的是专注于python本身,而不是被工具使用问题所困扰。君不见,知乎上关于Pycharm和Vscode的使用说明、常见问题的解决方案,多得几乎超过了讨论Python本身
    • 很多学生由于学校电脑的限制,安装Python官方提供的轻量型工具学习更方便
    • 手工运行代码,可以更直观、更深刻地了解脚本的解释执行过程
    • 手工调试代码,有助于代码优化,提高代码把控能力
    • 可以更好地使用pip安装和管理第三方模块

    当然,这些工具后续随着学习深入,作者也会普及和分享其功能用法。

    • Anaconda Python
    • PyCharm
    • Cpython
    • ActivePython
    • PyPy
    • Jython
    • Spyder

    在这里插入图片描述


    2.安装流程

    如果您选择Windows系统下编程,则您可以在Python官网Downloads页面中下载编程软件,其官网网址为“http://www.python.org”。同时,如果您是在Linux系统下编写Python代码,则您可以直接在Linux系统中内置安装使用Python解释器。

    在这里插入图片描述

    从Python官网下载时,请注意选择正确的版本。如果是用于学习,下载最新版没有问题,如果是用于生产,则要考虑你开发需要的第三方模块是否支持最新版的Python。注意,Python2已经不更新,建议大家学习Python3,两者语法基本类似,仅部分功能修改。这里作者选择下载Python3.6或Python3.7。

    在这里插入图片描述

    安装时不要忘记勾选最下面的两个复选框,否则会给后续的模块安装带来一些麻烦,推荐使用默认方式安装。

    在这里插入图片描述

    安装成功后,需要在“开始”菜单中选中“程序”,找到安装成功的Python软件,如图所示,打开解释器编写Python代码。

    在这里插入图片描述

    打开“Python 3.6(64-bit)”命令行软件,输入第一行Python代码“I love python”,输出结果如下图所示。解释型语言的优势,就是可以写一句执行一句,想到哪儿写到哪儿,不必像编译型语言那样得把程序全部写完,编译成功后才能运行。我特别喜欢使用python的IDLE,甚至拿它当计算器用。

    在这里插入图片描述

    但是如果你需要编写大段代码或自定义函数时,Python命令行肯定不是一个很好的选择,此时读者可以点击“IDLE”,运行Python的集成开发环境(Python Integrated Development Environment,IDLE),你可以用它来创建或打开.py脚本文件,可以编辑、运行和调试,打开如下图所示。

    在这里插入图片描述

    接着可以点击“File”中“New File”新建文件,并另存为py文件,如“test01.py”,然后点击运行“Run Module F5”按钮,运行Python脚本文件。

    在这里插入图片描述

    所有Python文件将以.py为扩展名。将源代码写在test01.py文件中运行。

    在这里插入图片描述

    很多时候,我们用IDLE验证代码的写法是否正确,查看模块是否安装成功以及版本号。IDLE支持tab键自动补齐,经常用这个功能查看某个对象的方法和属性。小技巧:

    • tab键自动补齐
    • 光标移动到执行过的语句上敲击回车,可以重复这个命令
    • 下划线(_)可以获取最后一次执行结果


    三.基础语法

    前面已经成功安装了Python软件,接下来我们开始讲解Python的基础语法,包括缩进与注释、变量与常量、输入与输出、赋值与表达式等。

    1.缩进与注释

    缩进
    不同于其他语言,在Python中通过缩进来标明代码的层次关系。1个缩进等于4个空格,它是Python语言中标明程序框架的唯一手段。

    在Python中,同一个语句块中每条语句都是缩进的,并且缩进量相同,当回退或已经闭合语句块时,需要回退至上一层的缩进量,表示当前块结束。下面是C语言和Python语法的对比,其中C语言用大括号来区分层次关系,Python通过缩进来区分。

    缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

    在这里插入图片描述

    Python引号
    Python 可以使用引号( ’ )、双引号( " )、三引号( ‘’’ 或 “”" ) 来表示字符串,引号的开始与结束必须是相同类型的。其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。

    word = 'eastmount'
    sentence = "娜璋AI安全之家"
    paragraph = """这是一个段落。
    包含了多个语句"""
    

    注释
    注释是用于说明代码信息的,注释代码是不执行的。Python注释主要包括两种:

    • 行注释:采用#开头进行单行注释,如“#定义一个变量”。
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:test01.py
    
    # 第一个注释
    print ("Hello World!")  # 第二个注释
    
    • 块注释:多行说明的注释采用’’'或"""开头和结尾,比如使用Python集成开发环境Spyder新建文件时,通常有一段注释说明。
    """
    Created on Sat Sep 16 10:34:31 2017
    @author: yxz
    """
    

    多行语句
    Python语句中一般以新行作为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

    total = item_one + \
            item_two + \
            item_three
    

    语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:

    days = ['Monday', 'Tuesday', 'Wednesday',
            'Thursday', 'Friday']
    

    2.变量与常量

    变量
    变量是程序中值可以发生改变的元素,是内存中命名的存储位置,变量代表或引用某值的名字,比如希望用N代表3,name代表“hello”等。其命名规则如下:

    • 变量名是由大小写字符、数字和下划线(_)组合而成的。
    • 变量名的第一个字符必须是字母或下划线(_)。
    • Python中的变量是区分大小写的,比如“TEST”和“test”是两个变量。
    • 在Python中对变量进行赋值时,使用单引号和双引号是一样的效果。
      注意,Python中已经被使用的一些关键词不能用于声明变量,关键词表如下:
    ['and', 'as', 'assert', 'break', 'class', 'continue', 'def',
     'del', 'elif',  'else', 'except', 'exec', 'finally', 'for', 'from', 
     'global', 'if', 'import', 'in',  'is', 'lambda',  'not', 'or', 
     'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
    

    不同于C/C++/Java等语言,Python中的变量不需要声明,就可以直接使用赋值运算符对其进行赋值操作,根据所赋的值来决定其数据类型,下图为未声明输出其类型。

    在这里插入图片描述

    常量
    常量是指程序中值不发生改变的元素,一旦初始化后就不能对其修改的固定值,它是内存中用来保存固定值的单元。由于某种原因,Python并未提供如C/C++/Java一样的const修饰符,换言之,python并没有定义常量的关键字。但是Python可以使用对象的方法来创建常量,比如通过const.py文件,将const类注册到sys.modules全局字典中


    3.输入与输出

    输出
    输出使用print()函数实现,包括输出字符信息或变量,在Python2中,输出包括两种格式:print a或print(a),表示输出变量a的值。但Python3不再支持空格输出,如果您之前使用的是Python2,我们需要注意这些区别。

    如果需要输出多个变量,则使用采用逗号连接,如print(a,b,c)。简单示例如下图所示,print()函数可以输出各种类型的变量。

    • print(a,b,c)
      在这里插入图片描述

    同时,Python支持格式化输出数据,需要调用format()函数实现,其输出格式为:print(format(val,format_modifier)),其中参数val表示值、format_modifier表示格式字,示例如下图所示。

    • print(format(val,format_modifier))

    在这里插入图片描述

    其中“6.2f”表示输出6位数值的浮点数,小数点后精确到两位,输出值的最后一位采用四舍五入方式计算,最终输出的结果为“12.35”。“.2%”表示输出百分数,保留两位有效数字,其输出结果为“34.56%”。如果想输出整数直接使用“.0f”即可。


    输入
    Python输入主要包括input()和raw_input()两个函数。

    • input()
      input()函数从控制台获取用户输入的值,格式为:<变量>=input(<提示性文字>)。获取的输入结果为用户输入的字符串或值,并保存在变量中。输入字符串和整数实例如下,其中type()函数用于查找变量的类型。
    >>> str1 = input("input:")
    input:"I am a teacher"
    >>> print(str1)
    I am a teacher
    
    >>> age = input("input:")
    input:25
    >>> print(age,type(age))
    25 <class 'str'>
    >>> 
    
    • raw_input()
      raw_input()函数是另一个输入操作,并返回string字符串。输入以换行符结束,通过help(raw_input)可以查找帮助,常见格式为:s = raw_input([prompt]),参数[prompt]可选,用于提示用户输入。示例代码如下,第一段代码输入“hello world”,第二段代码输入“25”。
    >>> str1 = raw_input("input:")
    input:hello world
    >>> print(str1)
    hello world
    
    >>> age = raw_input("input:")
    input:25
    >>> print(age,type(age))
    25 <type 'str'>
    >>> 
    

    注意,raw_input是2.x版本的输入函数,在新版本环境下会报错,该函数未定义。在3.x版本中应该用input()代替raw_input()。

    在这里插入图片描述


    4.赋值与表达式

    赋值
    Python中的赋值语句是使用等号(=)给变量直接赋值,如“a=10”。如果需要同时给多个变量进行赋值,表达式如下:

    • <变量1>,<变量2>,…,<变量n> = <表达式1>,<表达式2>,…,<表达式n>

    它先运算右侧N个表达式,然后同时将表达式结果赋给左侧变量。举例如下:

    >>> a,b,c = 10,20,(10+20)/2
    >>> print(a,b,c)
    10 20 15.0
    >>>
    

    表达式
    表达式是程序中产生或计算新数据值的一行代码,赋值表达式如a=10,通常由变量、常量或操作符号产生表达式。定义表达式注意一下几点:

    • 使用变量之前必须对其赋值,使用赋值表达式对其赋值。
    • 表达式也需要遵循句首缩进规律,且不能改变其空格数量。
    • 表达式中可以适量增加空格,使程序可读性更高,但空格不能分割变量的命名方式,比如“a = b + c”,在运算符之间适当增加空格。


    四.数据类型

    讲述完Python基础知识后,让作者带领大家认识Python的常用数据类型。

    1.数字类型

    Python常见的数字类型包括整数类型、浮点数类型、复数类型。

    • 整数类型:对应的数学中的整数,其返回类型为int型,如10、25等;long为长整型,也可以代表八进制和十六进制。
    • 浮点数类型:带有小数点的数字,返回类型为float型,如3.14、2.1e2等。
    • 复数类型:Python复数分为两部分,形如a + bj,其中a为实部,b为虚部,返回类型为complex,例如-12.3 + 8j。复数可以通过.real获取实部数据,.imag获取虚部数据。
    >>> z = -12.3 + 8j
    >>> print(z, type(z))
    (-12.3+8j) <type 'complex'>
    >>> print(z.real, z.imag)
    -12.3 8.0
    

    注意:Python中数字类型是可以相互转换的,其中浮点数调用int()函数转换为整数,如int(3.14)返回结果3,整数调用float()转换为小数,浮点数调用complex()函数转换为复数。


    2.字符串类型

    字符串类型在Python中是指需要用单引号或双引号括起来的一个字符或字符串。该类型调用type(‘Python’)返回的结果是str类型。一般记为:

    • s=“a1a2···an”(n>=0)

    字符串表示一个字符的序列,其最左端表示字符串的起始位置,下标为0,然后依次递增。字符串对应的编号称为“索引”,比如str1=‘Python’,则str1[0]获取第一个字符,即“P”字母,并且字符串提供了一些操作和函数共用户使用,比如len(str1)计算字符串长度,其返回结果为6。

    counter = 100         #赋值整型变量
    miles = 1000.0        #浮点型
    name = "Eastmount"    #字符串
    

    python的字串列表有两种取值顺序:

    • 从左到右索引默认0开始的,最大范围是字符串长度少1
    • 从右到左索引默认-1开始的,最大范围是字符串开头

    在这里插入图片描述

    如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。[头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。比如:

    >>> s = 'abcdef'
    >>> s[1:5]
    'bcde'
    

    3.列表类型

    列表是Python中非常重要的一个数据类型,它是在中括号([ ])中用逗号分隔的元素集合,列表中的元素可以通过索引进行单个访问,并且每个元素之间是有序的。例如:

    >>> list1 = [1, 2, 3, 4, 5]
    >>> print(list1)
    [1, 2, 3, 4, 5]
    >>> print(list1[0])
    1
    >>> print(type(list1))
    <type 'list'>
    
    >>> list2 = ['I', 'am', 'a', 'teacher']
    >>> print(list2)
    ['I', 'am', 'a', 'teacher']
    >>> print(list2[3])
    teacher
    >>> 
    

    列表可以完成大多数集合类的数据结构实现。它支持字符、数字、字符串甚至可以包含列表(即嵌套)。列表用 [ ] 标识,是Python最通用的复合数据类型。

    列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认0开始,从右到左索引默认-1开始,下标可以为空表示取到头或尾。(下图参考runoob网站,推荐大家去学习)

    在这里插入图片描述

    列表中的每个元素可以定义不同的数据类型,如list1 = [1, 1.3, ‘teacher’]。其操作方法和字符串类似,如列表采用加号(+)拼接、采用乘号(*)重复显示、也可以切片获取列表中的子元素,示例如下:

    >>> list1 = [1, 2, 3, 4, 5]
    >>> list2 = [6, 7, 8]
    >>> print(list1+list2)
    [1, 2, 3, 4, 5, 6, 7, 8]
    >>> print(list2*3)
    [6, 7, 8, 6, 7, 8, 6, 7, 8]
    >>> print(list1[2:4])
    [3, 4]
    >>> 
    

    列表中的常见方法如下表所示,假设存在列表list1 = [4, 2, 1, 5, 3]。

    在这里插入图片描述


    4.元组类型

    元组是和列表类似的一种数据类型,它采用小括号定义一个或多个元素的集合,其返回类型为tuple。示例如下:

    >>> t1 = (12, 34, 'Python')
    >>> print(t1)
    (12, 34, 'Python')
    >>> print(type(t1))
    <type 'tuple'>
    >>> print(t1[2])
    Python
    >>> 
    

    注意:可以定义空的元组,如t2=(),元组可以通过索引访问,比如上述代码t1[2]访问第3个元素,即“Python”。当元组定义后就不能进行更改,也不能删除,这不同于列表,由于元组的不可变特性,它的代码更加安全。

    以下是元组无效的,因为元组是不允许更新的,而列表是允许更新的。错误提示:TypeError: ‘tuple’ object does not support item assignment,在编程构成中出错或BUG是非常正常的,莫慌,解决掉它。

    # -*- coding: UTF-8 -*-
    tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
    list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
    tuple[2] = 1000    # 元组中是非法应用
    list[2] = 1000     # 列表中是合法应用
    

    在这里插入图片描述


    5.字典类型

    字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典是针对非序列集合而提供的,字典用"{ }"标识,由键值对(< Key > < Value >)组成,字典是键值对的集合,其类型为dict。键是字典的索引,一个键对应着一个值,通过键值可查找字典中的信息,这个过程叫做映射。

    示例如下,通过键值对可以获取“4”对应的“Guiyang”。

    >>> dic = {"1":"Beijing","2":"Shanghai","3":"Chengdu","4":"Guiyang"}
    >>> print(dic)
    {'1': 'Beijing', '3': 'Chengdu', '2': 'Shanghai', '4': 'Guiyang'}
    >>> print(dic["4"])
    Guiyang
    

    字典与列表主要存在几个区别:

    • 列表中的元素是顺序排列的,字典中的数据是无序排列的。
    • 它们的映射方式不同,列表通过地址映射到值,字典通过键值对映射到值。
    • 列表只能通过数字下标或索引访问,字典可以用各种对象类型作为键访问。

    字典键值对灵活应用非常重要,尤其是网络爬虫Json格式解析,后面我们实际案例中会用到。下面给出一段简单代码,重点是keys()和values()用法。

    dict = {}
    dict['one'] = "This is one"
    dict[2] = "This is two"
    
    tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
     
    print(dict['one']) #输出键为one的值
    print(dict[2])     #输出键为2的值
    print(tinydict)    #输出完整字典
    print(tinydict.keys())   #输出所有键
    print(tinydict.values()) #输出所有值
    

    输出结果如下图所示:

    在这里插入图片描述



    五.字符串操作

    个人觉得字符串操作也是Python非常好用的地方,不论是数据爬取、大数据分析或文本挖掘中,所以作者单独将该部分拿出来进行讲解。

    字符串是指有序的字符序列集合,用单引号、双引号、三重(单双均可)引号引起来,其中使用三重引号括起来的字符串变量可以用来定义换行的字符串。比如:

    str1 = 'hello world'
    str2 = "hello world"
    str3 = """hello world"""
    

    字符串支持格式化输出,需要引入操作符百分号(%)实现,在百分号的左侧放置一个格式化字符串,右侧放置期望的格式化值,也可是元组和字典。例如:

    >>> print("Hi!My Name is %s,I am %d years old and %f pounds heavy."%("YXZ", 26, 55.5))
    Hi!My Name is YXZ,I am 26 years old and 55.500000 pounds heavy.
    >>> 
    

    依次输出字符串(%s)、整数(%d)、浮点数(%s)三个值。同时字符串支持各种各样的操作,尤其是处理文本内容时,需要使用这些方法及函数,下面讲解常用函数。

    基础操作
    字符串的基本操作包括求长度、拼接、重复操作、索引、切片等等。假设str1字符串为“hello”,str2字符串为“world”,则len(str1)计算字符串str1长度为5;str1+str2拼接后的结果为“helloworld”;str1*3字符串重复结果为“hellohellohello”。

    字符串切片定义为s[i:j:step],其中step表示切片的方向,默认起点从0开始,终点不写切到最后。例如:

    str1 = 'abcdefghijklmn'
    print(str1[3:6])
    # def
    

    输出结果为“def”,从第3个值开始获取,第6个值为终点且不获取,即str1[0]=‘a’,str1[3]=‘d’,str1[4]=‘e’,str1[5]=‘f’。同样,如果增加step参数且为负数,表示从反向切片。正方向第一个a索引下标值为0,最后一个n索引下标值为-1,结果为“nmlk”。

    str1 = 'abcdefghijklmn'
    print(str1[-1:-5:-1])
    # nmlk
    

    find()函数

    • 用法:从字符串中查找子字符串,返回值为子串所在位置的最左端索引。如果没有找到则返回-1,扩展的rfind()方法表示从右往左方向查找,常用于正则表达式爬取数据。
    • 示例:获取字符串“def”的位置,位于第3个位置(从0开始计数)。
    str1 = 'abcdefghijklmn'
    num = str1.find('def')
    print num
    # 3
    

    split()函数

    • 用法:字符串分割函数,将字符串分割成序列,返回分割后的字符串序列。如果不提供分割符,程序将会把所有空格作为分隔符。
    • 示例:默认按照空格分割字符串,也可以设置如“+”分割字符串,该方法在字符串分割、IP提取、URL后缀提取常用。

    在这里插入图片描述

    strip()函数

    • 用法:该函数用于去除开头和结尾的空格字符(不包含字符串内部的空格),同时S.strip([chars])可去除指定字符。扩展的函数lstrip()去除字符串开始(最左边)的所有空格,rstrip()去除字符串尾部(最右边)的所有空格。
    • 示例:去除字符串前后两端的空格。
    >>> str1 = "    I am a teacher    "
    >>> print(str1.strip())
    I am a teacher
    >>> 
    

    join()函数

    • 用法:通过某个字符拼接序列中的字符串元素,队列中元素必须是字符串,返回一个拼接好的字符串函数,可以认为join()函数是split()函数的逆方法。
    • 示例:采用空格(’ ')拼接字符串[‘I’,‘am’,‘a’,‘teacher’],代码及输出结果如下。
    >>> num = ['I','am','a','teacher']
    >>> sep = ' '
    >>> str1 = sep.join(num)
    >>> print str1
    I am a teacher
    >>> 
    


    六.总结

    无论如何,作者都希望这篇文章能给您普及一些Python知识,更希望您能跟着我一起写代码,一起进步。如果文章能给您的研究或项目提供一些微不足道的思路和帮助,就更欣慰了。作者最大的期望就是文章中的一些故事、话语、代码或案例对您有所帮助,致那些努力奋斗的人。

    话说,作者当年通过Python其实是能找到一些好工作的,但由于喜欢教书,放弃了北京互联网,选择回到家乡贵州,成为了一名高校教师。哈哈,当时其实就想回去教Python和大数据知识的,虽然只是个普通的选择,但真心希望自己能站在讲台前,保持初心,教更多的学生、普及更多的Python编程知识,为家乡培育更多的数据分析、数据挖掘、大数据、网络安全等领域的人才,贡献绵薄之力。最后以作者离开北京选择回贵州任教的一首诗结尾:

    贵州纵美路迢迢,
    未付劳心此一遭。
    收得破书三四本,
    也堪将去教尔曹。

    在这里插入图片描述

    最后,真诚地感谢您关注“娜璋之家”公众号,感谢CSDN这么多年的陪伴,会一直坚持分享,希望我的文章能陪伴你成长,也希望在技术路上不断前行。文章如果对你有帮助、有感悟,就是对我最好的回报,且看且珍惜!2020年8月18日建立的公众号,再次感谢您的关注,也请帮忙宣传下“娜璋之家”,哈哈~初来乍到,还请多多指教。

    遗憾,让我们懂得完美。
    逝去,让我们不断前行。
    她夜色中的身姿是那么的美。

    (By:娜璋之家 Eastmount 2020-08-22 夜于武汉 https://blog.csdn.net/Eastmount)


    参考文献如下:
    [1] 作者书籍《Python网络数据爬取及分析从入门到精通》
    [2] 作者博客:https://blog.csdn.net/Eastmount
    [3] 许老师博客:https://blog.csdn.net/xufive/article/details/102993570
    [4] https://www.runoob.com/python

    展开全文
  • python课程系列(.1、python简介)

    千次阅读 2019-01-07 17:23:37
    文章目录Python简介Python 发展历史Python 特点python介绍python的优缺点python解释器 Python简介 Python 是个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性,...
  • 本课题基于此研究背景,以电子商务法律专业学生为调查对象,从疫情防控背景下在线课程教学现状、特点出发,分析其在防控疫情背景下的难点和优点,并采用文献研究与实证研究相结合的方式,先阅读大量相关研究文献,...
  • 点击“技术领导力”关注∆每天早上8:30推送“比尔·盖茨说微软离死亡只有180天,但是华为明天就会死亡”。面对未来遥不可同时看不见、摸不着的危机,任正非总是如屡薄冰。华为、腾讯、...
  • 这一年,这些书:2021年读书笔记

    千次阅读 2021-12-31 22:32:21
    你所赚的每分钱,都是你这个世界认知的变现;你所亏的每分钱,都是因为这个世界认知有缺陷。 你永远赚不到超出你认知范围之外的钱,除非你靠运气,但是靠运气赚到的钱,最后往往会由于实力不足而亏掉。 这...
  • 物联网工程课程设计论文

    千次阅读 2022-01-22 19:36:12
    物联网工程课程设计论文 《基于物联网的风力发电监控管理系统应用研究》
  • 前端课程体系大纲

    千次阅读 多人点赞 2019-07-17 16:59:58
    前端课程体系大纲 总阶段名称 阶段分支名称 技术名称 技术内容 学习目标 前端基础阶段 WEB基础 HTML基础 1.安装webstorm 2.设置webstorm ...
  • 近年来,科技在飞速的发展,RFID电子标签构建智能生活,以独特的优势让生活、工作发生了质的改变,在各个行业中扮演中重要的角色,并且被大量的应用在物流、仓储、图书馆、酒类、高级奢侈品、高档服装、护照以及各类...
  • 操作系统课程笔记

    千次阅读 2022-03-09 16:25:40
    实现了计算机资源的抽象; 特征:并发、共享、虚拟和异步。 基本特征 并发(两个或多个事件在同一时间间隔发生):有效地提高系统中的资源利用率,增加系统的吞吐量。 并行:两个或多个事件在同一时刻发生。 ...
  • 网络安全技术课程小结(

    千次阅读 2019-04-11 22:39:24
    答:ARP实现机制只考虑业务的正常交互, 非正常业务交互或恶意行为不做任何验证。比如当主机收到ARP响应包后, 它并不会去验证自己是否发送过这个ARP请求, 而是直接将应答包里的MAC地址与IP对应的关系替换掉原有...
  • 有很多小伙伴说在网上很难找到这本...第章一、填空题1.载体 2. 数据库 3.数据库 4.数据库 5.模式6.例行程序 7.内模式 8.DBMS 9.物理独立性 10.B/S二、选择题1~5: CCDBA 6~10:CCBBB三、简答题1.什么是数据库,其...
  • 前言集成开发环境(IDE)编译器工作原理学习指南入门书籍进阶书籍教程标准构建程序解释第个C++程序——“hello world”编译C++基础语法输入与输出C++风格C风格变量全局变量局部变量常量注释C++关键字、保留字C++...
  • 数据库课程设计(在线销售系统)

    千次阅读 2021-07-12 15:26:07
    《数据库系统》课程设计 土特产网上销售系统设计与开发 、 系统需求分析 () 需求概述 随着计算机技术在各行各业的应用日益广泛深入,网络购物早已盛行。 电子商务在各行各业的发展战略中占有重要地位,已成为...
  • 天,xx学院的课程学习人数下跌了,梁老板急得头发都要掉光了,现在,你能不能通过三种思维方式,做出个假设型的分析案例? 2.数据分析思维七大技巧 1)象限法 核心: 象限法是种策略驱型的思维...
  • 但也有些遗憾,大学的时候没有把这些计算机基础课程学好,有些甚至没有学,导致工作后有很长段时间蛮吃力的,全靠近些年“废寝忘食”的补课,才有所好转。 希望学弟学妹们,能从我这些经验中获得一些启发,少走...
  • 信息系统分析与设计课程心得

    万次阅读 多人点赞 2017-02-28 13:41:39
    信息系统分析与设计课程心得此博客为信息系统分析与设计课程的学习心得记录。、绪论1概念1.1信息要了解信息系统,首先要了解信息的概念。信息是我们理解世界的重要概念,我它的定义是:信息是客观事物及其相互...
  • 聊我在 B 站自学 Java 的经历吧

    万次阅读 多人点赞 2021-07-07 09:44:13
    Hey guys ,这里是 cxuan,欢迎你收看我最新期的文章。 这是篇鸽了很久的文章。。。。。。 事情还要从上回说起。。。。。。 我爱 B 站! 这篇文章我汇总了 B 站上计算机基础(操作系统、计算机网络、数据结构和...
  • pmp每日

    万次阅读 2019-12-25 10:26:47
    2019.12.25 每日题: You are a project manager of a company and your project is currently in execution phase.The customer has requested you for additional work. This work will affect the budget, but ...
  • MQTT,物联网圈的 HTTP,万物互联第

    万次阅读 多人点赞 2018-11-23 14:07:43
    物联网本身也是 AI 和区块链应用很好的落地场景之,各大云服务商也在纷纷上架物联网平台和服务。在 AI 和区块链的热潮过去之后,物联网很有可能成为下个风口,在风口到来之前,提前进行一些知识储备,是很有必要...
  • 牛逼!Java 从入门到精通,超全汇总版

    万次阅读 多人点赞 2021-05-06 19:40:33
    所以综上所述,入门 Java 你需要掌握的基础知识有 Java 基本介绍 Java 有哪些特点 什么是 Java 开发环境 Java 开发环境配置(初学者建议 Eclipse) 这里就需要区分不同的电脑类型了,种是 Mac ,种是 Windows,...
  • 、基本信息 本课程名称为“云计算技术与应用基础”,做为一门知识普及和技术入门课程,本课程 适用于高等职业院校 IT 相关专业学生,详细的适用专业、课程性质、开设学期、内容模块 和课时数等信息如表 1 所示。 ...
  • (三)具有相关优势特色学科的高校应届本科毕业生,课程成绩专业排名前10%; (四)参加国际、国内各类重大学科竞赛获全国二等奖以上奖励者(含二等奖),或已批准的第专利发明人,或以第作者身份发表A类论文者...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,074
精华内容 10,429
热门标签
关键字:

一对一课程的特点及优势