Python学习笔记一(基础信息)

欢迎关注我的博客我在马路边

说明:此笔记不是从零开始,在学习的过程中感觉需要记录一些比较重要和需要重复浏览的信息,然后才有此笔记。
学习详细内容可参考博客:廖雪峰的官方网站


输入输出

创建python文件:demo.py,文件第一行设置linux可直接执行注释:

#!/usr/bin/env pyhton3

添加上述注释后即可在linux或mac上直接用python demo.py来执行文件中的内容。

在文件第二行添加如下注释标识此文件以UTF-8格式进行编码:

# -*- conding: utf-8 -*-

创建好上述文件后即可向:demo.py文件中写python代码,#号代表注释完整内容如下:

#!/usr/bin/env pyhton3
# -*- conding: utf-8 -*-

# 定义name,并手动输入内容
name = input('please input your name:')

# 输出name值,这里输出的就是上面手动输入的name值
print('hello', name)

创建好文件保存,然后执行python demo.py命令后提示please input your name:,然后输入python或者其他内容并回车,然后打印出输入的内容hello python如下:

[centos demo]# python demo.py
please input your name:python
hello python

简述input和print两个函数,input是定义输入内容可以直接写name = input()然后执行输入内容,但是不友好需要提供提示信息,所以添加默认内容展示内容为提示信息name = input('please input your name:')
print函数输出内容,不仅可以输出字符串也可以执行计算结果,比如:

>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300

print里面的内容可以用英文的逗号,进行分割,输出逗号的内容前后自动以空格进行分割,比如上述输出的hello python中间以空格分割默认内容和动态内容,当然也可以写多个逗号,如:print('hello', name, 'welcome to China')


数据类型和变量

这里节的内容来自:数据类型和变量
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在Python中,能够直接处理的数据类型有以下几种:

整数

Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1100-80800,等等。

浮点数

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x10912.3x108是完全相等的。浮点数可以用数学写法,如1.233.14-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e80.000012可以写成1.2e-5,等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差

字符串

可以简单理解和js的一样,字符串可以用单引号'123'或双引号"ABC"括起来,如果想将单引号或者双引号当做字符串展示则用不同的引号括起来,比单引号'作为字符串,如:"I'm OK"。如果字符串既包含单引号'又包含双引号"可以用反斜线\转义,例如:'I\'m \"OK\"!'表示I'm "OK"!

布尔值

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

>>> True and True
True
>>> not True
False
>>> False or True
True
>>> 5 > 3 and 3 > 1
True

>>> age = 19
>>> print(age < 18)
Flase
>>> print(age > 18)
True

创建文件,写入内容如下。下面例子用到了if-elif-else,注意写法:

#!/usr/bin/env pyhton3
# -*- conding: utf-8 -*-
age = 19
if age < 18:
  print('age less than 18')
elif age == 18:
  print('age equal 18')
else:
  print('age greate than 18')

空值

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

变量

变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。
变量在程序中就是用一个变量名表示了,变量名必须是大小写英文、数字和_的组合,且不能用数字开头,比如上面例子用到的nameage都是变量

# age 是一个整数
age = 19
# π 是一个浮点数
pi = 3.141592654
# name 是一个字符串
name = '我在马路边'
# flag 是一个布尔值
flag = False

下面例子可以展示变量在内存中是怎样指向的

>>> a = 'ABC'
>>> b = a
>>> a = 'XYZ'
>>> print(b)

最后一行打印出变量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中名没有常量,不会像java那样生成一个不可改变的常量,但是大家都会约定俗成的将大写的变量默认为常量,比如PI = 3.141592654,也就是说PI也是可以被修改重新赋值的!

小结

本章的重新复习了一下基础的输入输出和基础数据类型,给我的感觉和js很像,变量不用指定类型值,通过赋值就可以执行类型,而且可以重复赋值成不同类型。还有变量在内存中给不同变量赋值,再重新赋值需要特别注意不会改变被赋值的变量,有点绕口请参考上述例子。

欢迎关注我的博客我在马路边

posted @ 2018-09-05 14:17  我在马路边  阅读(152)  评论(0编辑  收藏  举报