python命令行程序

要致富,先修路(好好学习)

变量

变量の类型

基础数据类型

字符串(string)

“我是神来之笔大神”,双引号中的内容被叫做字符串,’hello,Wrold!’,单引号和双引号的作用是一样的,但是可以用来区别因为英文的撇号,如:”I’m Tom”,或者’my name is “Tom” ‘

整数型(int)

无符号的数字(除负号)被叫做整数(如:200.0就不是整数)(1、2、3、4.。。。。)

浮点型(float)

带符号的数字,如2.0、1.1、-2.5等等,开发过程中避免去使用浮点数

布尔型(bool)

逻辑运算,结果真假(True/False)(1/0)非0值都为真,只有0代表假


python特有的数据类型

元组(tuple)

表示一组数据,数组集合,

元组的表示方法:('hello',100,10.1,True),使用括号将多组数据括起来,中间使用逗号隔开
元组的特性:
有序的:定义好的位置不会改变
只读的:元组定义好的不能改变
可索引:根据索引下标进行索引
如:('hello',100,10.1,True),有两个索引下标,如下所示
0 1 2 3
0 -3 -2 -1

列表(list)

与原则几乎相同,表示一组数据

列表的表示方法:['hello',100,10.1,True],使用中括号将多组数据括起来,逗号隔开

列表的特性:丰富的操作方法(增删改查等等)、有序的、可索引的,索引下标与元组一样
与元组的区别就在于操作方法和只读

字典(dict)

多键值对存储结构

字典的表示方法:{'name':'zs','old':20,'like':'girl'},使用大括号括起来,key:value一个键对应一个值,使用逗号隔开,键名不能相同

字典的特性:
无序的:通过hash散列进行存储
可索引:被键名索引
可读可写

不常用的数据类型

集合(set)

去重后的列表

集合的表示方法:{1,2,1,3,2,3,'hello'},结果出来之后会变成{1,2,3,'hello'}

可被索引,需要将集合转换为索引


变量の命名规则

变量名不能以数字开头

变量名不可以和关键字冲突

变量名只能由a-z,A-Z,0-9,_组成

python是一种弱类型语言

弱类型语言:变量类型无需预定义,自动识别变量类型

强类型语言:变量类型需要预定义,由开发人员手动指定变量类型

弱类型
name = ['zhangsan','xiaozhang','xiaosan']       默认识别为list
old = 18                #默认识别为int
old = "hello,world!"        #默认识别为str
强类型
int old = 18         #必须预定义数据类型为int

python是一种强格式语言
存在游标卡尺

变量数据类型展示

a = "hello,world!"      #str字符串
b = 100            #int整数
c = 10.5        #float浮点数
d = True         #bool布尔
f = [1,2,3,4,5,6,7,8,9,0]        #list列表
g = (0,9,8,7,6,5,4,3,2,1)        #tuple元组
h = {'a':1, 'b':2}            #dict字典
i = {1,2,1,3,2,3}        #set集合
print(a,b,c,d,f,g,h,i)            #print用来输出变量

Python与云计算

云计算发展现状和需求

​ 人工智能、数据挖掘、数据分析
​ ECU引擎控制单元(汽车应用)、C/C++
​ UNIX:由美国AT&T公司的贝尔实验室研发
​ Python

Python与C/C++相比
C/C++:相比Python唯一的优点,运行效率高
Python:性能过剩,不需要考虑运行效率

语言的区分

面向对象:C++、Python、Go、Java、PHP
把数据都作为对象来看,进行操作,如:预定义了一个变量,针对变量进行操作
学习成本高,提高开发效率

面向过程:C语言
代码死板

Python注释的添加

单行注释:在最开头加入sharp符(#),也可以使用单引号进行注释

a = 10 #单行注释
#这是一段注释文本
'单行注释'

多行注释:使用三引号进行多行注释

'''
多行注释
使用三引号
引起来即可
python中没有多行注释
使用三引号可以将多行内容转换为字符串
'''

对数据类型的操作

元组(tuple)

使用下标输出指定变量值

a = ('hello','jake',20,10.5)   #定义变量a,值为hello,jake,20,10.5
print(a[1])            #使用[]来进行索引下标,输出变量a的正下标1的值,也就是第二个变量值

使用下标修改指定变量值

a[1] = 'rose'
TypeError: 'tuple' object does not support item assignment
#元组对象不支持修改值,因为变量类型为元组

列表(list)

使用下标输出变量值

a = ['hello','rose',20,10.5]        #定义变量a
print(a[1])            #输出变量a的索引下标1的值

修改变量值

a[1] = 'jake'        #列表支持变量值的修改
print(a)        #输出变量a的所有值

追加变量值

append():追加变量值

a.append('Chai')      #追加数据
print(a)
['hello', 'rose', 20, 10.5, 'Chai']

清除变量值

clear():清空数据

a.clear()   #清空变量中的所有值
print(a)
[]

浅复制

copy():复制一个变量的值赋予另一个变量

b = a.copy()    #浅复制
print(a, b)
['hello', 'rose', 20, 10.5] ['hello', 'rose', 20, 10.5]
#同样使用b = a也可以进行复制
b = a            #设定b的变量值和变量a一样
a[1] = 'jake'    #修改a下标为1的值为jake
print(a, b)        #b的值随着a的变化而变化
['hello', 'jake', 20, 10.5] ['hello', 'jake', 20, 10.5]

Python动态内存管理机制

pymalloc

b = a.copy()
#以上的原理相当于,a=['hello', 'rose', 20, 10.5],b=['hello', 'rose', 20, 10.5]
b = a
#以上原理相当于,a=['hello', 'rose', 20, 10.5],b=a=['hello', 'rose', 20, 10.5]

变量扩展

extend():将一个变量的值,追加到另一个变量中

a = ['hello','rose',20,10.5]        #定义变量a
b = [1,4,2,3]                #定义变量b
a.extend(b)                #将b的值扩展到变量a中
print(a)
['hello', 'rose', 20, 10.5, 1, 4, 2, 3]
a.extend([1,4,5,4])        #也可在括号中直接添加值将1,4,5,4扩展到变量a中
print(a)
['hello', 'rose', 20, 10.5, 1, 4, 5, 4]

删除单独指定的变量值

remove():可以删除列表中的单个值,下标也会随之变化

a = ['hello','rose','hello',20,10.5]
a.remove('hello')            #删除变量值中的hello
print(a)
['rose', 'hello', 20, 10.5]   #只删除检测到的第一个hello

弹出变量值

pop():从列表中弹出变量值,也可理解为删除单个指定位置变量值

a = ['hello','rose',20,10.5]
a.pop(1)        #pop括号中指定索引下标
print(a)
['hello', 20, 10.5]
#也可以使用pop将数据弹出到另一个变量中
b = a.pop(1)
print(a, b)
['hello', 20, 10.5] rose

查询变量值的索引下标

index():

格式:index(value, [start, [stop]])

查询值所在的下标位置,查询起始下标位置和停止下标位置

a = ['hello','rose',20,10.5]
print(a.index('rose'))        #查询a变量中rose所在的下标位置
1
print(a.index('rose', a.index('hello')))  #也可以使用index的套用来定位起始下标
1
#下标中也可以使用算数运算符
print(a.index(20, a.index('hello') + 1)) #表示从hello所在下标位置的下一位开始查询
2

如果变量中存在两个hello,要查询第二个hello的位置,但也不知道第一个hello的位置,进行如下操作

a = ['hello','rose','hello',20,10.5]
print(a.index('hello', a.index('hello') + 1))
2

变量中插入数据

insert():在指定位置插入指定数值

格式: insert(index, value)

例:
a = ['hello','rose','hello',20,10.5]
a.insert(2, 'haha')            #在索引下标2位置添加haha
print(a)
['hello', 'rose', 'haha', 'hello', 20, 10.5]
例:使用套入index来识别插入位置
a = ['hello','rose','hello',20,10.5]
a.insert(a.index('hello'), 'haha')
print(a)
['haha', 'hello', 'rose', 'hello', 20, 10.5]

字典(dict)

大部分操作与列表类似,以下列出最常用的操作

使用键名索引得到指定值

a = {
    'name' : 'zs',
    'old' : 22,
    'sex' : 'man',
    'say' : 'money and woman is life!' ,
    'money' : ['梅赛德斯奔驰','GTR','布加迪威龙','红旗']
}
print(a['name'])
zs

使用索引得到字典索引中的列表索引的指定值

a = {
    'name' : 'zs',
    'old' : 22,
    'sex' : 'man',
    'say' : 'money and woman is life!' ,
    'money' : ['梅赛德斯奔驰','GTR','布加迪威龙','红旗']
}
print(a['money'][(2)])

输出多个值

a = {
    'name' : 'zs',
    'old' : 22,
    'sex' : 'man',
    'say' : 'money and woman is life!' ,
    'money' : ['梅赛德斯奔驰','GTR','布加迪威龙','红旗']
}
print(a['money'][(2)], a['name'])

清空字典

clear()

a = {
    'name' : 'zs',
    'old' : 22,
    'sex' : 'man',
    'say' : 'money and woman is life!' ,
    'money' : ['梅赛德斯奔驰','GTR','布加迪威龙','红旗']
}
a.clear()
print(a)
{}

修改指定键值

a = {
    'name' : 'zs',
    'old' : 22,
    'sex' : 'man',
    'say' : 'money and woman is life!' ,
    'money' : ['梅赛德斯奔驰','GTR','布加迪威龙','红旗']
}
a['name'] = 'lisi'
print(a['name'])
lisi

查看字典中所有的键名

print(a.keys())
dict_keys(['name', 'old', 'sex', 'say', 'money'])

评论




正在载入...
PoweredHexo
HostedAliyun
DNSAliyun
ThemeVolantis
UV
PV
BY-NC-SA 4.0