吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4154|回复: 10
收起左侧

[Python 原创] 【原创分享】On the third day learning Python(第三天学习Python)

[复制链接]
ShadowY 发表于 2016-11-17 22:46
本帖最后由 ShadowY 于 2016-11-17 22:49 编辑

***On the third day***            
2016year 11month 17day Thursday

Today is 我正式写Blog的on the third day!
Today is 我学习了Python的数据类型与变量。

First,
昨天对变量和数据说的不是很详细,今天查看了几种不同的资料:
变量是计算机内存中的一块区域,变量可以存储规定范围之内的值,而且值可以改变(貌似在任何语言中都是这样)
Example:假如我们的The math teacher是叫Alice,我们可以叫他Alice,也可以叫他Teacher。But,我们的The English teacher是叫Rhona,我们同样可以称她为Teacher,在这句话中,Teacher就相当于一个变量。

下面我就来说说——变量的命名1、变量名是由字母、数字、下划线组成。2、变量不能以数字开头3、不可以使用Python中的关键字来命名,比如Python等4、变量最好以能【看懂所表示的内容来命名】,比如上图所说的变量teacher = 'Alice'(这是在交互环境下输入的,如果想在代码中打印出来要使用print()来打印值),下面我来举例表示一下

下面来说说赋值运算符(Python运算符包括:1、赋值运算符;2、算数运算符;3、关系运算符;4、逻辑运算符)

1、’=’ 表示等于: x = 3, y = ‘abc’
2、’++’ 表示加等于: x += 2
3、’-=’ 表示减等于: x -= 2
4、’=’ 表示乘等于: x = 2
5、’/=’ 表示处等于: x /= 2
6、’%=’ 表示求余等于: x %= 2

算数运算符
1、’+’ 表示加法: x + y
2、’-’ 表示减法: x - y
3、’’ 表示乘法: x y
4、’/’ 表示实数除法: 3/2, 3.0/2
5、’//’ 表示整数除法: 5.6/2,5.6//2
6、’%’求余数:除法求余运算,比如17除6余数是5
7、’**’求幂运算: 2**3=8(2的平方)

关系运算符
1、’<’ 表示小于: 1<2
2、’>’ 表示大于: 2>3
3、’<=’ 表示小于等于: 1<=1
4、’>=’ 表示大于等于: 2>=2
5、’!=’ 表示不等于: 1 !=2
6、’==’ 表示完全等于: 2==2

逻辑运算符(又称布尔运算)
1、’and’ 表示逻辑 与:Ture and False 【真真得真(与运算)】
2、 ‘or’ 表示逻辑 或: Ture and False 【假假得假(或运算)】
3、 ‘not’ 表示逻辑 非: not Ture 【同假异真(异或运算)】

布尔值
布尔值和布尔代数的表示完全一样,一个布尔值只有Ture and False两种值。要么是Ture,要么是False。在Python中,可以直接用Ture、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来:

逻辑 与   

逻辑 或

逻辑 非

布尔值经常用在条件判断,Example:

空值
空值是Python里的一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。此外,Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型,后面会慢慢学到。

在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:

这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,赋值语句如下(// 表示注释):

和静态语言相比,动态语言更灵活,就是这个原因。

请不要把赋值语句的等号等同于数学的等号。比如下面的代码:

如果从数学上理解x = x + 2那无论如何是不成立的,在程序中,赋值语句先计算右侧的表达式x + 2,得到结果12,再赋给变量x。由于x之前的值是10,重新赋值后,x的值变成12。

最后,理解变量在计算机内存中的表示也非常重要。当我们写:

时,Python解释器干了两件事情:

在内存中创建了一个’ABC’的字符串;

在内存中创建了一个名为a的变量,并把它指向’ABC’。

也可以把一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据,例如下面的代码:

最后一行打印出变量b的内容到底是’ABC’呢还是’XYZ’?如果从数学意义上理解,就会错误地得出b和a相同,也应该是’XYZ’,但实际上b的值是’ABC’,让我们一行一行地执行代码,就可以看到到底发生了什么事:
1、执行a = ‘ABC’,解释器创建了字符串’ABC’和变量a,并把a指向’ABC’:
2、执行b = a,解释器创建了变量b,并把b指向a指向的字符串’ABC’:
3、执行a = ‘XYZ’,解释器创建了字符串’XYZ’,并把a的指向改为’XYZ’,但b并没有更改:
所以,最后打印变量b的结果自然是’ABC’了。

    常量

所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:

PI = 3.14159265359
但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。

最后解释一下整数的除法为什么也是精确的。在Python中,有两种除法,一种除法是/:

10 / 3
3.3333333333333335
/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
9 / 3
3.0
还有一种除法是//,称为地板除,两个整数的除法仍然是整数:
10 // 3
3
你没有看错,整数的地板除//永远是整数,即使除不尽。要做精确的除法,使用/就可以。

因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数:

10 % 3
1

Practice
请打印出以下变量的值:
n = 123
f = 456.789
s1 = ‘Hello, world’
s2 = ‘Hello, \’Adam\”
s3 = r’Hello, “Bart”’
s4 = r”’Hello,
Lisa!”’

小结

Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。

注意:Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的,例如Java对32位整数的范围限制在-2147483648-2147483647。

Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)。

上面就是今天的全部成果了。虽然没做出什么有趣的程序,But!
Adhere to is victory!










版权声明:本文为博主原创文章,未经博主允许不得转载。

觉得好的给个评分支持支持啊!!!给点动力啊!!!


觉得好的给个评分支持支持啊!!!给点动力啊!!!


觉得好的给个评分支持支持啊!!!给点动力啊!!!




免费评分

参与人数 4热心值 +4 收起 理由
wzhJava + 1 我很赞同!
林唯楚 + 1 我很赞同!
Lbf + 1 我很赞同!
youanan + 1 鼓励鼓励!确实原创心得分享!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
总有刁民想阴朕 发表于 2016-11-17 22:56
提示: 作者被禁止或删除 内容自动屏蔽
电量未满 发表于 2016-11-17 23:05
五行天 发表于 2016-11-17 23:07
 楼主| ShadowY 发表于 2016-11-18 08:54
电量未满 发表于 2016-11-17 23:05
楼主,你用什么教程自学的,求推荐

文字教程是廖雪峰大神的,百度廖雪峰就行了,视频教程看了几种,比如老男孩,中谷教育,还有腾讯课堂,网易课堂,百度课堂都有免费的视频教程
fengyiyao1095 发表于 2016-11-18 09:04 来自手机
学python之前如果能把c语言学好的话会事半功倍
 楼主| ShadowY 发表于 2016-11-18 09:13
fengyiyao1095 发表于 2016-11-18 09:04
学python之前如果能把c语言学好的话会事半功倍

是的,但是学c周期太长,都差不多,刚开始学什么语言都一样
 楼主| ShadowY 发表于 2016-11-18 15:21
js742870 发表于 2016-11-18 13:51
推荐 看帖基本不回帖, 后来我发现, 这样不但会花掉我的金币, 而且不厚道。 于是我把这段文字保存在记事 ...

你这样水贴要是被查到会扣分~
 楼主| ShadowY 发表于 2016-11-18 17:50
js742870 发表于 2016-11-18 15:57
我该怎么回复才能不被扣分还能涨cb

说真话~~
Lbf 发表于 2016-11-20 15:50
楼主的教程是视频教程还是书?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 14:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表