热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基础认知

一、背景PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#、@、@@也好不到哪里(OO人员最该学习的一门语言)。Python应该

一、背景

PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#、@、@@也好不到哪里(OO人员最该学习的一门语言)。

Python应该是写起来最舒服的动态语言了,一下是一些读书笔记,最后会介绍一下高级的用法:Mixin、Open Class、Meta Programming和AOP。

文中有些地方是用2.7开发的,如果您安装的是3.x,有几点需要注意:

  • print "xxx" 要换成 print("xxx")
  • __metaclass__ = type 删除掉。

二、开发环境

2.1交互器模式

利用交互式模式运行python:

首先,在cmd模式下打开python,实际为安装python路径(如果在环境变量中已经添加python路径,则直接输入python.exe即可)

1 D:\>"d:\Program Files\Python35\python.exe"

 

出现以下情况即为进入python编辑器成功

C:\Users\Administrator>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

 

然后,在c盘目录下创建一个文本文件,命名为“hello.txt”,内容为打印Hello Word

print("Hello word")

 

 

交互器中查找刚才新建文件所在位置,开始--》cmd --> cd c:\ -->dir 

 

一些常见cmd命令

cd = change directory 切换目录

cd\ = 跳转到硬盘根目录

cd c:\跳转至C盘根目录

d: 跳转至d盘
dir = 查看当前目录文件列表
cd .. 返回上一层目录
cd ../.. 返回上上一层目录
cd ../../..
返回上上上一层目录

进行程序运行及结果如下:

D:\>"d:\Program Files\Python35\python.exe" c:\hello.txt
Hello World!

 

文件扩展名:

#c:\hello.txt .txt 代表文件的扩展名(后缀名),用于区分文件类型
.txt 记事本文本文件
.doc word文件
.xls excel文件
.ppt PPT文件
.exe 可执行文件
.jpg .png .jpeg 图片
.gif 动态图片
.pdf PDF文件
.mp4 .avi 视频
.py python文件
.java java 文件
.c .h c源码
.php php文件
.js Javascript

 

2.2 Pycharm模式

配置pycharm:

注意:建议pycharm不要直接创建工程,直接创建工程是在C盘的虚拟环境中创建,不便于日后查找编辑。

1.直接新建空白文件夹,将空白文件夹直接拖拽到Pycharm上完成新建。

2.在该文件夹上创建新工程。

3.配置:文件—>设置—>项目:python解释器—>(右侧)设置Add—>选择现有环境(新环境为虚拟环境)—>添加解释器,选择安装路径下的python.EXE即可—>确定

 

三、缩进

解释:缩进用来表示隶属关系
例如:

1 if 判断条件:
2   执行语句……
3 
4 var = input("Enter:")
5 if var == "A":
6   print("True")

 


缩进——推荐四个空格 (使用2个、3个空格或者tab都是可以得)

建议不要tab与空格混用
不同软件对空格的显示逻辑总是一样的,但是对于tab却五花八门。有的软件把Tab展开成空格,有的不会展开。有的Tab宽度是4,有的宽度是8,这些不一致会使得代码混乱,尤其是靠缩进表示块结构的Python

四、注释

注释有两种方式:

单行注释   # 
多行注释   """ 内容"""

作用:
1. 避免自己忘了写的代码是做什么的——
2. 写给人看
3. 不要去注释你代码做了什么,而要去 注释 我的代码为什要这么做。

 

Linux/Unix用户需要注意的内容:

特殊的注释:

在某些Python文件中我们会看到文件的第一行是 

#!/usr/bin/env python

这一行是一个特殊的注释,他有特殊的作用,被称为Shebang,一般在linux/Unix中出现。

Shebang是一个由 “#”  和 “!” 构成的字符串行(#!),她出现在文件的第一行。当文件中出现Shebang 时,Linux/Unix 操作系统的的程序载入器会分析Shebang的内容,将之后的内容作为解释器命令,并调用该执行,将载有Shebang的文件路径作为解释器的参数。

在这里 #! 先用于帮助内核找到Python解释器,但是在导入模块的时候将会被忽略,因此,只有在直接执行的文件才有必要加入#! 。

五、获取用户输入

1 #获取用户输入
2 x = input("x:")
3 y = input("y:")
4 
5 print("x*y=", x*y)

注:input接受的是Python代码,输入中可以访问当前执行环境中的变量,如果想获取原始输入需要使用 raw_input。

六、用户打印输出

 print 语句

1 print 'a', 'b' #print可以接受多个参数,参数的输出之间以空格相隔。
2 print 'a', #如果逗号之后没有参数,则不会换行。
3 print 'b'  

 


推荐阅读
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 安卓select模态框样式改变_微软Office风格的多端(Web、安卓、iOS)组件库——Fabric UI...
    介绍FabricUI是微软开源的一套Office风格的多端组件库,共有三套针对性的组件,分别适用于web、android以及iOS,Fab ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
author-avatar
x深藏的爱x_402
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有