python2.0和3.0版本变化很大,要跟随脚步,学新的,用新的。3.0

python开发工具pycharm 5.0

python的交互器

python的程序一般放到Linux环境下运行。

python程序文件的后缀为.py(也可以不加,程序文件中会指定执行语言,但是一般人都加)。

创建一个简单的HelloWorld.py程序。

$ cat HelloWorld.py
#!/usr/bin/env python3.5    #这里就是指定了执行语言
#__*__encoding:utf-8__*__
print("Hello World!")

执行文件:

~ tedzhou$ chmod a+x HelloWorld.py
~ tedzhou$ ./HelloWorld.py
Hello World!

变量与赋值

变量是干嘛的?我们为什么要学?

一个项目要有上万行代码,程序是要处理各种复杂的业务逻辑。比如用户名&密码,输入,验证,不同页面上显示用户名。

用户名就要在不同的模块之间进行传递。那么用户名怎样在各个模块中传递呢。是不是通过名字调用简单,那么这个名字就是变量。

总结变量的作用:在你的程序中存储一些临时的数据,当程序运行时各种程序文件需要不断的去调用,调用的时候用这个名字去调用。

变量的定义:

变量起名

变量的命名:以大、小写英文字符开头,随后可以用英文字符、数字、下划线三种字符
例子:

name = 'apex'  #name为变量,'apex'为变量值(字符串)

name2 = name  #name这里没有引号,没有引号,python解释器默认就把它当作变量,而不是字符串。

当你需要定义的变量特别多的时候。你就需要遵守程序开发中的常用定义变量的两种方式中的一种:

常用写法两种
1.nums_of_alex_gf = 19     用_连接,下划线写法
2.NumsOfAlexGf =2 变量的驼峰写法,单词首字母大写
3. 在其他语言中有常量的概念,即不希望被更改的变量,python中没有定义常量的方法,有一个约定的写法:变量名全大写 USERNAME='Alex'
 
 
变量指向关系
当a= 3
b =a 
a =5
试问此时b?答案b =3
 
a为变量,变量只是存储程序中的临时数据。变量名指向数据的内存地址。
当a =3时,只是将变量名a指向了数据3的内存地址。
当b = a时,其实就是把变量名b的指引地址变得和a的一样。
当a =5时,a的指向地址换了,程序是由上而下走的,b此时还是指向数据3的内存地址,而a指向了数据5的地址。
所以此时变量b的值是3
 
python内部处理机制:
变量和值有指向关系,当a变量指向3时,内存中开辟空间存3,当a指向5时,内存开辟空间存5,那3存在还有意义吗?没有!是不是应该清除掉,没关系,清除的工作由python解释器来做,它会把没有指向的内存空间中的值删除掉。那它怎么判断有没有指向的呢,其实也简单,在存值的内存空间中同时存一个标记有多少个指向的值,比如上面的例子,a=3时,存3的内存空间有一个指引标示为1 ,b=a 时,3的内存空间的指引标示改为2,当a =5时,3的内存空间的指引标示为1,所以python解释器并没有把3的内存空间清除。

01python初识—编辑器&版本&变量知识的更多相关文章

  1. 初识Java Java基础知识

    今天给大家带来的是初级Java基础部分的知识:包括初识Java.变量.常量.数据类型.运算符.各种选择结构.循环结构.数组等Java的基础语法部分!!!内容.步骤超详细,附有各种案例的源代码(可以直接 ...

  2. 初识Kotlin之变量

    用Java开发了很多年,因为工作的需要学习Kotlin.初识Kotlin时是各种不习惯,觉得这个语言相对于Java而言并不够严谨.随着不断的深入,最终还是逃不过"真香定理".我一直 ...

  3. 初识java之变量、数据类型和运算符(一)

    博友目标: 1.掌握变量的概念 2.引子----会使用常用数据类型 众所周知,每台电脑都有一个内存这么个必不可少的元素,那么到底内存到底是用来干什么的呢?其实啊,计算机内存相当于人类的大脑,计算机在处 ...

  4. Java 语言基础 (初识Java语言, 变量和数据类型, 运算符, 流程控制语句, 数组)

    初始 Java 语言 Java SE -- Java Platform, Standard Edition 是 Java 平台的基础 Java SE 以前称为 J2SE, 可以编写桌面应用和基于 we ...

  5. 初识git版本控制系统

    当下git分布式版本控制系统越来越火,掌握git也是必须的一个技能.因此,对git做了如下学习. Git初级指南 1. 先安装git.(ps:在select cmponents处要勾选Git Bash ...

  6. 循序渐进Python3(六) -- 初识内置变量、反射、递归

    #python用下划线作为变量前缀和后缀指定特殊变量.稍后我们会发现,   #对于程序来说,其中的有些变量是非常有用的,而其他的则是未知或者无用的.   #我们总结一下Python中下划线的特殊用法  ...

  7. 39.Android版本小知识

    中文名----英文名----版本----对应API Level 棉花糖 Marshmallow - 6.0.1_r10 - API 23棉花糖 Marshmallow - 6.0.0_r5 - API ...

  8. 初识Java(2) 变量与数据类型

    一. 变量 1.变量是内存中的一个标识符号,用于存储数据 2.变量命名规则 1)  必须以字母.下划线 _ .美元符号 $ 开头 2) 变量中,可以包括数字 3) 变量中,不能出现特殊的符号,空格 4 ...

  9. Vue 2.6版本基础知识概要(一)

    挂载组件 //将 App组件挂载到div#app节点里 new Vue({ render: h => h(App), }).$mount('#app') VueComponent.$mount ...

随机推荐

  1. 快速排序算法(Quicksort)

    快速排序算法是对集合中元素进行排序最通用的算法,俗称快排,其算法的时间复杂度为O(nlgn),空间复杂度为O(1). 我们举例来对其算法思路进行理解,譬如数组 A = { 4, 8, 1, 2, 9, ...

  2. 关于很怂地退回SDK,ndk,gradle版本这件事。。。(降版本fix项目异常)

    前言:说明一下,这篇文章对别人应该是没什么用的,单作为自己的记录吧,方便以后查询 电脑重装后没有再使用之前的studio2.3,而是直接下载了最新版的v3.1.2,同时升级了所有SDK(28),NDK ...

  3. r语言 列出所有变量

    你希望知道目前工作空间中存在哪些已定义的变量和函数. 解决方案 使用ls函数,或者使用ls.str函数了解每个变量更详细的信息. 讨论 ls函数可以显示当前工作空间中所有对象的名称:> x &l ...

  4. Qt封装QTcpServer参考资料--QT自带QTcpServer架构分析

    Qt 4.6自带的threaddedfortuneserver是个简单明了的 Qt  C/S网络编程server端程序的例子, 该例子演示了 QTcpServer与QThread配合的方法. 代码不多 ...

  5. 用Python中的tkinter模块作图(续)

    八.显示文字 用create_text在画布上写字.这个函数只需要两个坐标(文字x和y的位置),还有一个具名参数来接受要显示的文字.例如: >>> from tkinter impo ...

  6. 第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作、增、删、改、查

    第三百六十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作.增.删.改.查 elasticsearch(搜索引擎)基本的索引 ...

  7. mac命令行启动tomcat

    一.修改授权 进入tomcat的bin目录,修改授权 ➜ bin pwd /Users/yp/Documents/workspace/apache-tomcat-7.0.68/bin ➜ bin su ...

  8. 多媒体开发之rtmp---rtmp client 编译

    静态库连接编译问题: assert 原来在c编译器下没定义 ceill 没连接没加 -lm http://blog.chinaunix.net/uid-20681545-id-3786786.html ...

  9. (转)编译android5.1,添加swap分区的方法

    clang++: error: unable to execute command: Killedclang++: error: assembler command failed due to sig ...

  10. shiro+redis多次调用doReadSession方法的解决方案

    Web 项目使用shiro,针对这个问题可以重写DefaultWebSessionManager,将缓存数据存放到request中,这样可以保证每次请求(可能会多次调用doReadSession方法) ...