圆方圆python入门:如何学习(二)
) 一、编程开发规范 作为一门开发语言,python自然也有自己的编程规范,以下是特有且必须遵循的规范:
代码开头 python中代码必须顶格编写,除非被作为语句嵌套在条件判断或条件循环中。 代码层级 代码与代码之间的逻辑层级关系(涉及逻辑判断、包含关系等情况)通过空格来界定,第一层顶格编写,第二层(被包含或者逻辑判断后的执行动作)开头预留4个空格(如果不考虑跨平台可以使用tab) 对齐方式 同一个层级的代码必须严格对齐,如第一层都是顶格,第二层都是4个空格开头,第三层则是8个空格,以此类推。 注释 单行注释用#开头,单独一行作为注释或者在代码后面通过#跟上注释均可,多行注释在首尾处用成对的三引号引用即可,可以是成对的三个单引号或者三个双引号。 代码块 if逻辑判断和for循环条件后面均以冒号结尾,然后通过4个空格开始下一层级的实际执行动作语句编写。这部分在冒号后面接上的语句称为代码块。 程序命名 编写的python程序必须以.py结尾。 项目规范 启动一个项目开发时先在开发工具中创建project,然后根据需要创建目录,最后在目录下创建当前活动的py程序。 二、变量 python中的变量也用于存储临时值以便后续灵活调用,在定义时只能使用字母、数字、下划线的任意组合,且不能以数字开头,不能以python内置的关键字来命名变量(如and,import,global,finally等,有待后续学习加深印象)。对变量进行字符串类型的赋值时,字符串需要用成对的引号引起来,可以是单引号、双引号或者三引号。
建议通过以下两种形式来定义较为复杂的变量,便于阅读:
驼峰体 即每个单词的首字母大写,其他小写,如MappingTable 下划线 不同单词之间通过下划线分开,如mappting_table 三、字符编码 字符编码经历了ASCII码->unicode->UTF-8的演变过程,python 2.x默认使用ASCII编码,而3.x默认使用UTF-8编码。由于字符编码事关重大,一言不合就会导致乱码,因此强烈建议统一使用万用的utf-8编码。怎么使用呢?
程序开头明确显式定义 #!/usr/bin/env python
-- coding: utf-8 --
windows下编程可忽略第一行,但为了保留移植性建议始终声明变量。
在程序解释器中选择utf-8字符编码 以上两个条件缺一不可,虽然python 3.x版本默认使用utf-8编码,但还是建议在程序中声明编码格式。
以上是结果,下面谈谈为什么强烈建议使用urf-8编码,以及为什么utf-8编码就可以通吃。
最早就只有包括所有字母的大小写、数字、必要的特殊符号等合计才127个字符被编码到计算机里,这个编码就是ASCII编码。由于需要进行编码的字符才有127个,因此用7个二进制位就足以搞定了,但8个二进制位才能构成一个完整的字节,因此索性用8个二进制位来进行编码,剩余的一位只好浪费掉。所以ASCCI码只占用一个字符。
随着计算机技术的推广和普及,其他不以英语为官方语言的国家也开始使用计算机了。那么现在问题来了,一个字节的8个bit位只能表示非常有限的字符(设计时只包括所有字母的大小写、数字、必要的特殊符号,其中整数还不能超过255),既有的ASCII编码表里没有包含其他国家的语言字符,但显然也没法强迫全球都使用英语,于是各个国家开始进行本土化改良,设计能满足自己国家需要的编码,如国内的GB2312。这里的改良涉及两个要点,一是原有的一个字节的编码空间要扩充为两个字节甚至更多,二是新的编码还不能与既有的ASCII编码冲突,否则老美要跟你捉急了!你可以想象,中国搞定了一套,日本也搞定了一套,接着是韩国、越南等巴拉巴拉,大家都有自己的编码标准,各自为政,遇到多语言混合使用的场景这编码表还不炸开锅,连同计算机一起傻掉!这时Unicode应运而生。Unicode把所有语言都统一到一套编码里,用两个甚至更多的字节来进行编码(通常用两个字节,搞不定时再喊人加砝码呀),这样就不会再有乱码问题了。
Unicode搞定了多国语言乱码和编码统一的问题,但你会发现如果需要处理的内容全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就不太经济划算。OK,Unicode的演进改良版utf-8就是来解决这个问题的。utf-8的优势在于它使用“可变长编码”,在继续沿用ASCII编码基础上来对1个字节不能搞定的那些语言字符进行编码设计,这样英文还是用1个字节,遇到中文就用3个或者更多的字节来处理。这样既可以保障空间和性能的最大化,还能兼顾老美的老巢和其他非英文的编码兼容问题,一举三得!所以你会发现ASCII其实是utf-8的子集,utf-8向下兼容。
四、 Python解释器 python是一门解释性语言,自然不能缺了解释器(类似于JVM)。官方支持Cpython、Jpython、Ironpython和pypy等,默认使用基于C语言实现的Cpython。它也是最为广泛使用的解释器。程序运行时会把.py文件转换成.pyc字节码文件,然后运行在python虚拟机上。
五、构建Python的开发环境 构建好包括解释器(虚拟机)和开发工具IDE在内的Python的开发环境才便于展开程序开发之旅。
其中解释器(虚拟机)从python官方下载安装即可,需要注意的是建议安装3.7版本,windows下安装后需要把python的bin目录和scripts目录追加到系统环境变量path和用户变量path中。我的win 7用户不是以administor,补充追加了用户变量后才能在cmd下傻瓜式地输入python。linux下系统默认是2.x的版本,安装3.7版本时需要先将旧版本重命名为其他目录(如python2.6)后再安装,安装完毕无需额外设置环境变量。
好的程序猿都得有自己好使的IDE,python程序建议使用pycharm工具来进行开发。从官网下载安装社区版即可,需要注意的是选择后本地的解释器和项目的默认字符编码。其他一些好玩的特性、快捷键等只有后续逐步体会了。
六、模块初识 python内置了很多模块,同时也可以自定义编写一些好玩的模块,使用模块时需要通过关键字import导入。导入后python会从系统变量的路径中从前往后一次查找,首次成功查找匹配后不再进行后续查找。因此如果需要使用自定义模块,需要特别关注自定义模块的存放位置,底线是只存放在系统变量的一个路径下,否则可能得到意外的结果。
七、用户输入和格式化输出 用户输入通过input来实现,示例如下:
YourName=input("Please input you name here: ") 简单的输出通过print来实现,示例如下:
print("Hi,", YourName) #调用输出上面用户输入的变量YourName 注意:
3.x版本中input默认接收用户输入的类型为字符串,如果需要使用其他的数据类型则需要进行转换,如 UserAge=int(input("Please input your name:")) print输出中可以接上转义符号\来实现更多的输出显示效果,如 \n表示换行,\t为制表符。 print的使用进阶——字符串的格式化输出:
python中,对字符串进行格式化输出与c语言是相同的,即借助%来实现。%s表示与字符串替换,%d表示用整数替换,%f表示用浮点数替换,如果输出的字符串中本身就需要%(比如输出比率),则需要用连续的两个%%来输出%。
示例程序如下: #!/usr/bin/env python #-- coding:utf-8 -- print ("Your name is %s" %"Bob") print ("Your age is %d" %21) print ("Your name is %s,age is %d" %("Bob",21)) 从以上示例程序可看出,利用print进行格式化输出的基本格式是在需要替换输出的位置用%s,%d等占位符,然后在后面通过%来接上实际替换后需要输出的内容,如果需要替换输出的元素不止一个,则需要在%后面通过一对圆括号把实际替换后需要输出的内容包含进来,同时在每个元素之间用逗号隔开。
八、Python的运行逻辑 Python的运行工作逻辑如下:
内存加载代码->语法分析->解释器加载->生成字节码->执行字节码->生成机器码->CPU执行
【搜索圆方圆,获得“python教程”,“python下载”,“python入门”类相关信息。】
圆方圆python入门:如何学习(二)相关推荐
- (Python入门)学习笔记二,Python学习路线图
(Python入门)学习笔记二,Python学习路线图 千里之行始于足下,谋定而后动,冰冻三尺非一日之寒.之所以说这三句话,就是对于下面整理的路线图,即不让自己感觉路途的遥远而感到达到巅峰神界的遥遥无 ...
- (Python入门)学习笔记一,初次接触尝试使用Python——环境搭建与配置
(Python入门)学习笔记一,初次接触尝试使用Python 早就耳闻Python大名,搞大数据.做人工智能.整机器学习,就得了解Python.之前一直没有去了解,现在由于之前一个项目涉及到一点Pyt ...
- python pyramid基础学习二
python pyramid基础学习二 1.前言 前面我们使用了基础命令创建pyramid项目,并运行了Hello word,万事开头难,我们知道了开发pyramid项目需要一个env文件夹,里面包 ...
- python入门基础代码图-Python入门基础学习一
------------恢复内容开始------------ Python简介 Python由来 Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多范罗苏姆为了再阿姆斯特丹大法时间,决 ...
- python人工智能入门优达视频_看优达学城python入门视频学习C++
在如今这个时代,计算机领域中,各种技术瞬息万变,不断更新迭代.随着人工智能.机器学习等先进技术的兴起,近年来,python入门视频是很多人关注的,Python程序员的数量已经大大超过C++程序员.然而 ...
- Python入门基础学习记录(二)汇率案例学习记录
一.汇总整理 1.操作 ①新建python文件 工程右键--new--python file 2.注意问题与知识点 >变量定义:直接写变量名即可,例如定义一个字符串并赋值123: rmb_str ...
- python 找到目录下文件名规则_假如编程是魔法之零基础看得懂的Python入门教程 ——(二)魔法实习生第一步了解魔杖的使用...
学习目标 了解什么是开发环境 了解python语言的环境安装 了解python语言编程的编辑器工具 一.打怪升级你先得了解武器使用的条件 对于很多第一次学习编程的同学对于很多定义性的概念大多都不了解, ...
- Python 入门基础笔记(二)
一`.模块是经过封装的类库可以经过导入之后直接调用,有标准库和第三方库,标准库导入即可,第三方库要安装之后使用; 常用标准库有: OS标准库-------- 提供很多与操作系统交互的函数 RE标 ...
- Python入门基础学习笔记
Python笔记 笔记介绍 我学习的课程链接 利用python编写程序进行温度单位的转换 这是重点 编程画图 重点 知识点 turtle的RGB色彩模式 编程画出同心圆 编程画出五角星 绘制蟒蛇 Py ...
最新文章
- VMware12中安装CentOS7.2的详细过程
- spark streaming 接收 kafka 数据java代码WordCount示例
- 如何理解JavaScript原型
- ajax代码 java,AJAX - java代码库 - 云代码
- java加密解密代码_java加解密文件公用方法整合(多看一本书,少写三行代码)
- Java SecureRandom 简单生成随机正整数
- JVM参数-X和-XX的区别
- “电脑族”保健 六项注意
- 计算机管理磁盘管理右键无反应,win7系统删除磁盘管理磁盘右键菜单只有“帮助”的解决技巧...
- 逆水寒服务器什么时候能维护好,逆水寒更新了什么内容 8月23日官方维护内容及时间一览...
- 计算机键盘上每个键的作用
- 计算机导论部分知识整理
- 【网络协议】转载:关于TCP与UDP的接收recv和recvfrom
- 分布式事务之Seata个人吐血整理
- java 进销存 springmvc SSM crm 项目 系统
- HTML CSS 知识点总结
- 关于大数据的八大热点问题
- shell不允许输入空字符_Linux Cygwin知识库(一):一文搞清控制台、终端、shell概念...
- 启动mysql系统找不到指定文件
- 环保行业应用终端--4G/5G环保数据采集仪及智慧环保解决方案