python基础知识

简单过一下相关知识

[toc]

输入输出函数

1
a=input("提示"

a是复制的变量,input内是提示

python中不需要;来表示语句结束,python是通过换行来确定的;python也不需要声明变量类型,直接拿来用;

print函数和c里面的输出差不多,能输出结果

注意一下print的输出文件的语法

1
2
3
fp=open('D:/text.txt', 'a+')
print (' helloworld' ,file=fp)
fp.close()

open函数在c中就是打开一个文件流,第一个参数是路径,第二个是操作

然后输出打印,第一个是输出的参数,第二个是文件流

最后关闭文件流

与c不同的是,一般文件流是个指针,python里面没有把指针明确写出来,但是形式上却差不多

转义字符与元字符

所谓转移字符就是具有特殊作用的字符,为了与普通字符区分,给字符前面加上反斜线

常见的转移字符有换行\n,退格\b占位符\t

元字符比较陌生

元字符,不希望字符串中的转义字符起作用,就使用原字符,就是在字符串之前加上r,或R

1
print (r'hello\nworld\')

输出

1
hello\nworld

二进制和字符编码

这节参考我的组成原理,需要注意的就是python中的写法

1
2
print (chr(0b100111001011000))
print (ord('乘'))

输出

1
2

20056

二进制前缀0b,八进制0o,转换十进制方法ord()

python保留字

引入keyword可以查看保留字

1
2
import keyword
print(keyword.kwlist)

python的命名规则

不能以数字开头,可以是字母、数字、下划线_

不能是我的保留字我是严格区分大小写的

变量

变量的有标识,类型和值

1
2
3
4
5
6
7
print(name)

print(’标识’,id(name))

print(’类型’,type (name))

print ('值’, name)

这个name的id就相当于一个指针,存储这指向值的地址

python中的数据类型

整数int

浮点float

注意python浮点数加法的写法

1
2
3
from decimal import Decimal

print(Decimal('1.1’)+Decimal('2.2'))

布尔true(1),false(0)

字符串str

单引号,双引号都可以,但只在一行写,三引号可以多行写

类型转换

{ % img/转化类型.png % }

python的类型转换非常好记,直接就是要转类型的缩写

文字类无法转成整形或浮点型

有些类型转换会造成精度丢失

注释

单行注释 #

多行注释三引号

中文申明注释(写在开头)

1
#coding:utf-8

运算

加减乘除,取余,幂运算**,整除运算//(一正一负向下取整)

1
2
print(2**2)#2的2次方
print(9//2)#4

取余%运算公式

1
2
print (9%-4)	#-3
#公式余数=被除数-除数*商9-(-4)*(-3) 9-12-->-3

赋值

python支持链式赋值,就是可以连等

可以参数赋值

+=,-=、*=、/=、//=、%=

支持系列解包赋值

a,b,c=20,30,40

1
a,b=b,a#交换ab的值

比较运算符

==判断是否等于

is判断是否id相同

布尔运算符(逻辑运算)

and相当于&&逻辑且,两个同真才为真

or相当于||逻辑或,一个真全真

not相当于!非

in相当于查找,在什么中是否有

位运算

按位与& 对应数位都是1,结果数位才是1,否则为0

按位或| 对应数位都是0,结果数位才是0,否则为1

左移<< 高位溢出舍弃,低位补0

右移>> 低位溢出舍弃,高位补0

运算符优先级

算术>位运算>比较运算>布尔运算>赋值运算

对象的布尔值

Python所有对象都有一个布尔值
以下对象的布尔值为False
False
数值

0

None

空字符串

空列表

空元组

空字典

空集合

用bool()方法查看,其他均为true