python基础--数据类型&循环

时间:2020-04-21
本文章向大家介绍python基础--数据类型&循环,主要包括python基础--数据类型&循环使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1、双引号单引号:通常一样,变量里面有双引号外面用单引号,反之通用,如果变量里面单双引号都有,用三引号'''变量'''

  Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

>>> print('Ru\noob')
Ru
oob
>>> print(r'Ru\noob')
Ru \n oob

2、数据类型

  1)内置的 type() 函数可以用来查询变量所指的对象类型。

    input:接受到的全部是str类型,查看类型var 的字符类型是:type(var)

    类型转换:var = float (var)

  2)Python3 中有六个标准的数据类型:

  • ①Number(数字): int、float、bool、complex(复数)。在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
  • ②String(字符串):1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。2、字符串可以用+运算符连接在一起,用*运算符重复。3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。4、Python中的字符串不能改变。
  • ③List(列表):list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]

    List(列表) 是 Python 中使用最频繁的数据类型。

    列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

    列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

    和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

    列表截取的语法格式如下:

    变量[头下标:尾下标]

    索引值以 0 为开始值,-1 为从末尾的开始位置。

  • stu=['zhangyi','zhanger','zhangsan']
    stu2=[]
    #新增
    stu.append('zhangsi')
    stu.insert(0,'zhangwu')
    #修改
    stu[0]=('zhangxiaowu')
    # #删除
    # stu.pop(0)
    # del stu[0]
    # stu.clear()清除
    #stu.remove('zhangyi')#删除元素
    #取值方式
    #print(stu[0],stu[1])
    #其他用法
    # list1=[1,5,77,78,23,12]
    # print(list1.count(2))#计数,出现的次数
    # print(list1.index(77))#角标
    # list1.sort()#升序
    # print(list1)
    # list1.sort(reverse=True)#降序
    # print(list1)
    # list2=list1.copy()#拷贝
    # print(list2)
    # list1.extend(list2)#合并list1list2
    # print(list1)
    # list1.reverse()#翻转
    # print(list1)
  • ④Tuple(元组):元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。 tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )
  • ⑤Set(集合):student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}

    集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

    基本功能是进行成员关系测试和删除重复元素。

    可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
  • ⑥Dictionary(字典):tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
  • stu_info={
  •     'name':'xiaoyi',
    'sex':'man',
    'phone':'13123452345'
    }
    stu_info['age']=18#新增方式1,可以是存在的key,即为修改
    print(stu_info)
    stu_info.setdefault('qq','123123')#新增方式2,不处理已经存在的key
    print(stu_info)
    stu_info.pop('age')#删除方式1,不可以删除不存在的key
    print(stu_info)
    del stu_info['qq']#删除方式2,不可以删除不存在的key
    print(stu_info)
    #取值
    print(stu_info.get('qq'))#如果不存在则为None,更好用
    print(stu_info['name'])#如果不存在则报错KeyError
    print(stu_info.get('add','北京'))#get可以取默认值,如果字典里面没有这个key,取后面的值,如果有取字典的值
    print(stu_info.get('sex','woman'))

    stu_info1=stu_info.copy()#复制
    print(stu_info1)

    print(stu_info.keys())#取所有key
    print(stu_info.values())#取所有的value
    print(stu_info.items())#将字典变为二维数组
    stu_info.update(name='wo',money=5000)#新增或修改一个多个值
    print(stu_info)
    stu_info.clear()#清空
    print(stu_info)
  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

3、条件判断:if else; if elif else;
4、循环、迭代、遍历:
for、while、dowhile
whlie 需要计数器,
continue用法:结束本次循环进行下一次循环
break:跳出循环
pass:什么也不处理,循环继续
while else:while正常结束后执行else,else非必须写,非正常结束属于break结束的循环,不执行else的方法
for循环不需要计数器,会自动加一
for else:正常结束后执行else,else非必须写,非正常结束属于break结束的循环,不执行else的方法

5、字符串格式化:占位符%s,d,f
d整数,s的话什么类型的数据都行
# 欢迎**,今天的日期是***
name='xiaozhang'
time='2020-04-08'
a=98.12345
s= '欢迎'+ name+',今天的日期是:'+time
s1='欢迎 %s ,今天的日期是:%s'%(name,time)
s1='欢迎 %s ,你的分数是:%.2s'%(name,a)98.12

s1='欢迎 %s ,你的分数是:%.5f'%(name,a) 98.12
s5='欢迎{name} ,今天的日期是{time},你的分数是:{a}'.format(name=name,time=time,a=a)

s4='年龄是{age},姓名是{name}'
s4=s4.format(age=age,name=name)


三种方式:1、s,2、s1,3、format:s4、s5
6、将两个list合成一个字典:

usernames = ['xiaohei', 'xiaobai', 'xiaoming']
passwords = ['123456', '11111', '1']
# 将两个list转化为数组user_info = {'xiaohei': '123456', 'xiaobai': '11111', 'xiaoming': '1', 'lcl': '123'}
#方法一:循环方式
index1=len(usernames)
# index2=len(passwords)
user_info={}
for i in range(index1):
key = usernames[i]
value= passwords[i]
user_info.setdefault(key,value)
print(user_info)

#方法二:zip方法
user_info=dict(zip(usernames,passwords))
print(user_info)

原文地址:https://www.cnblogs.com/znkanchai/p/12739547.html