python自学日志,数据类型

python自学日志–基础篇(1),python基础篇

  从认知python,到上学python,中间经历了挺长一段时间的观念挣扎。人一连对未知的东西有着天生的恐惧感,可是,人又是对未知充斥好奇。所以在终极,依然推开了那扇门,开端攻读python。

python其实是挺有趣的,那篇小说也首要从基础方面介绍一下python。

一、安装。

自己注重是在windows系统上学习python。也就只介绍python在windows上的装置要点。

1、安装版本,python官英特网,python有几个版本。1,python2  2 ,python3

这多少个版本有挺多差异的地点,这里笔者使用的python3,前边代码演示也都以应用python3张开。

安装就十分的少废话,图片 1  
在此间把那多少个挑选勾上,不然早先时期需求团结安装情形变量。

2,手动设置意况变量

右键计算机

-``-``》属性

-``-``》高级系统设置

-``-``》高级

-``-``》环境变量

-``-``》在第二个内容框中找到 变量名为Path 的一行,双击

``-``-``> Python安装目录追加到变值值中,用 ; 分割

``如:原来的值;C:\python27,切记前面有分号

 二,数据类型

python中的数据类型比很少,算起来应当有上边二种

1,字符型,   class<str> 表示字符串

2,数值型,   class<float>
表示浮点数(差不离算作小数,但浮点型却不可是小数) class<int>
整数型(python第22中学有长整数和整数之分,python3中从未)

3,布尔类型, class<bool> 表示推断,
True:表示为真,Flase:表示为假

4,其他还应该有,列表:list, 元组:tuple,集结:set,字典:dict

知情这么些之后就足以拓宽基础语法的上学。

三,基础语法

在那在此之前,还会有局地基础知识实行扩大。

1,注释:解释代码成效,这里分为单行注释和多行注释。

单行注释:在你想要注释的剧情前面用 “ # ”
进行讲授。那行内容就不会在你写的代码中实行。

多行注释:在您想要注释的剧情后面和前边加 多少个引号——例:  ”’  你好 ”’ 

这里注释多行,可是譬如就用一行表示了,应该能够知道。这几行就不会在您写的代码中实行。

2,变量:把字面常量赋给具有自然意义的记号,符号正是变量名。

命名法规:

变量名以字母,下划线开始(里面包涵字母;数字;下划线)

  不得以是注重字(关键字:就是在python中装有自然意义的斯拉维尼亚语名称)

  变量名最初不可能是数字。

  注:变量指向内部存款和储蓄器地址,重新赋予新的变量名指向精神是指向变量的内部存款和储蓄器地址。

  (python3中能够使用粤语作为变量名,但不提出利用。)

3,运算符

python中运算符遵从数学生运动算准则,这里可是多说了。

关于复合运算和涉嫌运算,在随后的代码中看到,结合代码应该能够精晓它的含义。

此地就能够开头最简易的代码学习:

    # coding: utf-8

  print('hello word')
  注:记得在编写代码前对你的脚本文件的文件编码进行声明:一般情况下都会声明为 utf—8
这行代码的意思是:打印' hello word'
这是最开始学习的时候要练习的第一段代码。
接下来要学习的就是命令和语句。

从认知python,到学习python,中间经历了挺长一段时间的理念挣扎。人连连对未知的东西有着后天的…

python基础-01,python-01

1.python版本间的距离:

事关知识点:

1,开首相关

2,变量

3,顾客交互,数据类型,占位符

4,if判断

5,while循环

6,for循环

 

1,开首相关:

1.1 注解解释器

  #!/usr/bin/env python

  证明解释器,在linux以及mac中调用相关解释器。

 

1.2 缩进

  在python中,注意缩进的选拔,当出现IndentationError报错开上下班时间都以缩进错误。

 

1.3 注释和转义

  注释:

  单行注释能够用:#

  多行注释:”’被讲明内容”’ (使用多个单引号也许八个双引号)

  转义:

  单个字符转义能够动用:\

  转行转义:”’…”’(多少个单引号也可以用来转义)

 

2,变量

2.1 变量的赋值

  python中变量的赋值格式:

    a = 10

  a为变量名称,10为赋给变量a的值。

 

2.2 变量命名的准绳

  1,变量名只可以是字母,数字,下划线任性组合

  2,变量名第贰个字符不能够是数字

  3,python变量名区分轻重缓急写

  4,不能够将python关键字作为变量名,获取当前python版本关键字方法:

    import keyword
    print(keyword.kwlist)

2.3 变量的指向

  a = 10

  b = a

  a = 11

  print (a,b)

  实施结果突显a=11,b=10。

  图片 2

    a指向内部存款和储蓄器中的10,当a =
b时,并非将b指向a,而是将b指向a指向的内部存款和储蓄器的岗位。

    所以当a的对准爆发改造时,b的针对性并未因为a的针对性别变化化而改造

 

 3,顾客交互,数据类型,占位符

  用户交互:input

    name = input(’please input your name:’)

    job = input(‘please input your job’)

    age = input(‘please input your job’)

    info = ”’

      name:{_username}

      job:{_job}

      age:{_age}

    ”’ .format(_username=name,

          _job=job,

          _age=age)

    print(info)

    使用.format来进展变量的调用,将客户输入的变量值代入上边包车型地铁info中

 

  数据类型:

    字符串:一般选用’ ‘恐怕” “括起来的大肆文本

    整型:python能够拍卖率性大小的正整数和负数

    浮点数:小数,浮点数的演算有的时候会存在四舍五入情形

      python中的除法:

        /:平常除法,算出来的是小数

        //:地板除,总括出来的永久是整数(非四舍五入,只保留整数局地)

    布尔值:  

      一个布尔值独有二种结果:true只怕false

      布尔值的运算:and or not

    变量:

    常量:无法变的量,在python中国和日本常大写变量名来表示

  

  占位符:

    常见占位符:

    %d:整数

    %f:浮点数

    %x:十六进制整数

    %s:字符串

    注意:在python中使用%%来代表百分号

 

4,if判别语句:

  username = input(‘name: ‘)

  password = input(‘password: ‘)

 

  if username = ‘ZQ’ and password = ‘123’:

    print(‘wecome,user {_name} login’.format(_name=username))

  else:

    print(‘input error’)

  注意if后边要加:(冒号)

 

5,while循环:

  要求:顾客推测年龄,允许测度3次。

  age_of_zq = 25

  count = 0

  while count < 3:

    guess_age = input(‘please input guess age: ‘)

    if guess_age == age_of_zq:

      print(‘it\`s right’)

      break

    elif guess_age > age_of_zq:

      print(‘too old’)

    else age_of_zq < 25:

      print(‘too small’)

    count += 1

  else:

    print(‘your chance is over’)

 

  break&continue:

    break:甘休近年来巡回

    continue:跳过此番巡回,提前甘休本次巡回,直接进去下一次巡回

 

6,for循环

  需要:将0-9那十二个数字每种3个数字打字与印刷输出

  for i in range(0,10,3):

    print(i)

 

  将第5小节须求使用for循环实现

  age_of_zq = 25

  for i in range(3):

    guess_age = int(input(‘please input guess age: ‘))

    if guess_age == age_of_zq:

      print(‘OK’)

      break

    elif guess_age > age_of_zq:

      print(‘bigger’)

    else:

      print(‘small’)

  else:

    print(‘your chance i over’)

 

涉及知识点: 1,开首相关
2,变量 3,顾客交互,数据类型,占位符 4,if剖断 5,while循环 6,for循环
1,开端相关:…

    2.x与3.x版本对照

version 2.x 3.x
print print " "或者print()打印都可以正常输出

只能print()这种形式打印,否则会出现

SyntaxError

input

raw_inut

input:输出原生的数据类型,输入什么类型的值,就输出什么类型

raw_input:全部以字符串形式输出

3.x取消了raw_input方法,只能使用input()

方式提示输入字符串, 该方法和2.x版本的raw_input()

如果想要实现与2.x input()输出原生数据类型的值,

可以使用eval(input())

class 2.x支持新式类,和经典类,使用新式类时,类继承顺序会影响最终继承的结果 必须使用新式类,解决了类间继承顺序问题
例如:1/2,2.x输出的值为0 例如:1/2 3.x输出的值为0.5

 

2.python数据类型

  int  整型,如1,123,1234,-1,-123…,范围在-2**31~2**31-1以内,取决于操作系统,不会低于那几个界定。

  float  浮点型,如1.1,1.12,-1.1,-1.12…

  str  字符串,如’hello’,’123’,’abc’…字符串要求接纳单引号恐怕双引号引起来。

  bool  布尔类型,独有三个值,真:True,假:False,任何非零的数据类型,结果都为真,结果为0时,则为False。

  long  那几个项目只设有2.x本子,取值范围Infiniti大,取决于可用的设想内部存款和储蓄器。

  complex  复数,如3.12j,2.45e-6j…

  元组(tuple)  如(‘1’,‘abc’,’hello’)。

  列表(list)  如[‘a’,’abc’,’python’]。

  字典(dict)  如{‘name’:’tom’, ‘age’:’20’, ‘job’:’IT’}。

3.python编码

  python
2.x本子暗中同意string字符编码,1个字符只可以存8bit,能够使用内置函数,chr()和ord()进行字符调换。

  python
3.x版本私下认可使用unicode编码格式,能够行使内置函数unichr()和ord()举办字符转变。

4.python命名标准

  python变量名(标志符)只好以字母或下划线发轫,且不可能满含特殊字符,注意python保留主要字无法作为变量名,那样等于重写python的放置方法,大概会影响别的办法的调用,具体python保留字,见4.1小节内容。

  为了书写标准,建议变量名使用统一的风格书写,比如:驼峰是
TestLoginSucess 恐怕test_login_success。

  单个前导下划线先河的标记符,意味着约定为私有的。

  四个前导下划线开始的标记符,表示肯定专项使用的标志符。

  即使标记符还应该有多个下划线结束,则该标志符是言语的出格名称。

  除此以外部要求要表达的是Python是动态预先,也便是说在概念变量的时候绝不钦点变量的的数据类型,Python会在个变量赋值的时候自动改造变量的数据类型。

4.1python保留字

图片 3图片 4

#通过导入keyword模块,我们可以查看当前python保留了哪些关键字
import keyword

#查看python保留关键字
keyword.kwlist

#2.x输出['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']

#3.x输出['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

#注意,3.x新增了['False','None','True','nonlocal']同时去除了2.x ['exec']的关键字,大家在命名规范时,应该遵循3.x的关键字,便于向后兼容

#如果不确定该变量命名是否为关键字,也可以通过下面这种方法,检查是否为关键字
keyword.iskeyword('name')

#返回False,则说明该变量不是系统保留关键字,即可用

View Code

 

5.python注释

  python有三种注释方式,一种是单行注释,在言辞前加#标识,也能够行使多行注释,使用接二连三的四个单引号在须求注释的从头到尾的经过范围两边增添,也足以接纳接二连三的五个双引号。

例:

   ”’

    单引号注释

   ”’

 

   ”””

    双引号注释

   ”””

 

6.python的语法

  python以轻易著称,废弃了其余如c的{}花括号书写格局,以及未来追求语言的可读性,强制要求语法缩进,同一个语句块的代码缩进必得一致,肩负会并发缩进错误IndentationError,假若想一行写多条语句,能够运用分好;隔离

 

7.python运算符

   7.1算术运算符

算术运算符
运算符 描述 示例
+ 加法

>>> 14 – 5
9

减法
>>> 14 - 5
9
 *  乘法  

>>> 5 * 14
70
 / 除法  

>>> 14 / 5
2.8
 %  取模,即两个的数商的余数部分  

>>> 14 % 5
4
 **  幂运算  

>>> 2 ** 3
8
 //  整除,返回两个数的商的整数部分
>>> 10 // 3
3

 

  7.2相比较运算符:相比运算符不局限于数字,字符串、列表等都足以

比较运算符
运算符 描述 示例
== 判断两个对象是否相等(相等返回True,不相等返回False)
>>> 'abc' == 'abc'
True
!= 判断连个对象是否不相等(与==相反,相等返回False,不相等返回True)
>>> 1 != 2
True
<> 判断连个对象是否不相等(同上,但不建议使用)  
> 判断第一对象是否大于第二个对象,大于返回True,不大于(包括等于)返回Fasle
>>> 3 > 1
True
< 判断第一对象是否小于第二个对象,小于返回True,不小于(包括等于)返回Fasle
>>> 3 < 4
True
>= 判断第一个对象是否大于等于第二个对象,大于等于则返回True,否则返回False
>>> 3 >= 3
True
<= 判断第一个对象是否小于等于第二个对象,小于等于则返回True,否则返回False
>>> 3 <= 4
True

  7.3赋值运算符:进行赋值运算

赋值运算符
运算符 描述 示例
= 赋值 a = c 
+= 自加赋值 a += 1等价于 a = a + 1 a += 1
-= 自减赋值 a -= 1等价于 a = a – 1 a -= 1
*= 自乘赋值 a *= 1等价于 a = a * 1 a *= 1
/= 自除赋值 a /= 1等价于 a = a / 1 a /= 1
%= 自取模赋值 a %= 1等价于 a = a % 1 a %= 1
**= 自求幂赋值 a **= 1等价于 a = a ** 1 a**= 1
 //= 自整除赋值 a //= 1等价于 a = a // 1 a //= 1

 

  7.4位运算符:按二进制位实行逻辑总结

位运算符
运算符 描述 示例
& 按位与
>>> 5 & 14
4
| 按位或
>>> 5 | 14
15
^ 异或
>>> 5 ^ 14
11
<< 左移
>>> 14 << 2
56
>> 右移
>>> 14 >> 2
3

8.python的数据类型操作

  8.1变量和常量

  变量是用来存款和储蓄程序运维时期要求一时半刻保存能够不断退换的多少的标记符,python有自家的内部存款和储蓄器回收机制,所以在开荒进度中永不思量变量的绝迹等。

  python和任冯骥态语言如C等区别的是,python的变量在赋值的时候解释器未来内部存款和储蓄器中创制数量对象,然后再成立变量,并把变量指向在此之前创制的数量对象。有一点点像C语言的指针,所以也可能有些人会讲python尽管并未有指针的定义,但总体皆指针

  8.2变量的赋值操作

图片 5图片 4

a = 2  #给a变量赋值为2
b = a  #将变量a 的值赋给变量b,相当于是将a指向的内存空间3同时指向了b,此时b也等于3
a = 5  #给a变量赋值为5,此时由于之前的a已经被赋予一次值,python解释器会将a指向的内存空间改为指向5

print(a,b)
(5,2)
#此时打印输出为5,2,因为虽然b=a,且a的值被改变了,但是b=a仅仅只是将b指向了a指向的内存地址,并不是真正意义上的指向a,a的值改变,仅仅是改变a指向的内存地址,当多个变量指向同一个地址空间时,python自身的内存回收机制,会在这块内存空间做一个标记,有多少个人引用了这块内存空间,就在+多少个1,直到引用为0,此时python解释器会将该内存空间收回,这也是有别于其他开发语言的最大特点之一,不需要关注内存的回收,

View Code

图片 7图片 4

#当想查看当前的两个变量是否指向同一个内存地址时,可以使用id()方法
a = 2
print(id(a))
#打印结果为 140723441682448

b = a
print(id(b))
#打印结果为 140723441682448
#可见,a和b指向的都是同一块地址空间,注:以上两个值与使用的平台有关,不一定都是一样的数值,但是这两个数值一定是相等的

a = 5
print(id(a))

#打印结果为 140723441682376

print(id(b))
#打印结果为 140723441682448
#通过观察两个变量的指针变化,可以发现,a值的改变并不会影响到已经被赋值的b

View Code

 

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website