• Python之路----数据类型


    Python的集成开发环境(IDE):pycharm

    数据类型

    数字

      整数int(integer)

      浮点数float

    布尔型,只有两个值

      真:True

      假:False

    字符串

    列表

    元组

    字典

    一、字符串

    1.字符串的输出

    (1)单引号、双引号、三引号

      它们的作用主要是为了区分。

    1 msg1 = "let's go" #双引号包含单引号
    2 msg2 = 'it is a "dog"'  #单引号包含双引号
    3 msg3 = '''it's a "dog"'''  #三引号包含单引号和双引号
    4 print(msg1)
    5 print(msg2)
    6 print(msg3)

    (2)利用三引号进行多行字符串的输出:

    1 msg = '''hello1
    2 hello2
    3 hello3'''
    4 print(msg)
    5 输出结果:
    6 hello1
    7 hello2
    8 hello3

    (3)字符串的格式化输出 %s

      按照下面的格式输出信息

       格式:
    1
    ---------------info of yangxl------------- 2 name:yangxl 3 age:26 4 job:IT 5 salary:500 6 --------------------end-------------------- 7 8 实现: 9 name = input('请输入您的名字:') 10 age = int(input('请输入您的年龄:')) 11 job = input('请输入您的工作:') 12 salary = float(input('请输入您的收入:')) 13 msg = ''' 14 ---------------info of %s------------- 15 name:%s 16 age:%s 17 job:%s 18 salary:%s 19 --------------------end-------------------- 20 ''' %(name,name,age,job,salary) 21 print(msg) 22 23 执行: 24 请输入您的名字:羊小羚 25 请输入您的年龄:26 26 请输入您的工作:IT 27 请输入您的收入:500.50 28 29 输出: 30 ---------------info of 羊小羚------------- 31 name:羊小羚 32 age:26 33 job:IT 34 salary:500.5 35 --------------------end--------------------

    另外还有%d,digit的格式化输出,

                %f,float的格式化输出。

    (4)字符串操作

    字符串的重复输出:*号

    str = 'hello world!
    '
    print(str*5)

    通过索引和切片对字符串进行操作

    1 str = 'hello world'
    2 print(str[5])
    3 print(str[3:])

    成员函数in,判断指定字符是否在字符串中

    1 str = 'helloworld'
    2 print('low' in str)
    3 print('c' in str)

    字符串拼接:join,不要用“+”

    1 a = '河北'
    2 b ='邢台'
    3 c = a + b   #用加号做字符串拼接,效率比较低,每一次拼接都会在内存中开辟一块空间。
    4 d = ' '.join([a,b])  #join中可以使用任何字符当做分隔符。
    5 e = ' '.join([a,b])
    6 print(c,d,e)

    字符串的操作方法A-Z:

    str = 'hello world'
    print(str.count('l'))   #统计字符串中指定字符串出现的次数
    print(str.capitalize())  #字符串的首字母大写
    print(str.center(30,'*'))   #接收两个参数,使用给定字符(强调:只能是一个字符,一个)填充到给定个数并居中
    print(str.ljust(30,'*'))    #左侧
    print(str.rjust(30,'*'))    #右侧
    print(str.endswith('ld'))    #判断字符串是否以指定字符串结尾,True or False
    print(str.endswith('orl',3,-1))  #endswith中也可以给定被判断字符串的开头和结束位置
    
    str2 = 'hell	o wo	rld'
    print(str2.expandtabs(tabsize=10))  #设置字符串中的一个制表位	扩展为多少个空格
    
    print(str.find('l'))   #返回给定字符串在整个字符串中第一次出现的位置
    print(str.find('de'))  #如果给定字符串不存在则返回-1
    print(str.index('or'))  #返回给定字符的索引
    print(str.index('oro')) #如果给定字符不存在,就会报错,这是index(error)和find(-1)方法的区别
    
    #这三个不常用
    str2 = '0.35'
    print(str2.isalnum())   #字母、整数、汉字都为True,有特殊字符为False
    str2 = 'sdlhfg天啊'
    print(str2.isalpha())   #字母、汉字都为True,整数、特殊字符为False
    str2 = '0345'
    print(str2.isdecimal())   #只有十进制整数时为Ture
    #这个常用
    str2 = '57878'
    print(str2.isdigit())      #是否是数值(整数)
    
    str2 = '_-df34'
    print(str2.isidentifier())    #判断是否是标识符,字母、数字、下划线而且不以数字开头,不含空格等特殊字符,不含中文
    
    str2 = 'sf-j_l$爱s23'
    print(str2.islower())   #下划线、特殊字符、汉字都可以,就是不能有大写字符
    str2 = 'R搬e $#砖'
    print(str2.isupper())   #只有不是小写字母就为Ture
    str2 = 'YANG XIAOLING'
    print(str2.istitle())   #只有首字母大写才为True
    
    isprintable和isspace相反
    str2 = '#sf-j 	_l$爱s23#'
    print(str2.isprintable())    #是否可打印的,只要不含有空格,
     	这样看不到的格式
    str2 = '	  	 backspace'
    print(str2.isspace())   #是否是空,空格,
     	都为True
    
    str2 = '  	 s dsf  '
    print(str2.strip())  #去掉两边空格和制表位
    print(str2.lstrip()) #左边
    print(str2.rstrip()) #右边
    
    print(str.replace('l','lm',2))   #替换原有字符串
    print(str.replace('le','lm'))    #没有的话就打印原字符串
    
    print(str.rfind('l'))    #从右边开始计数(前一个,前两个...),但索引仍是从左边开始算起
    print(str.rindex('l'))    #不多说了
    
    str2 = 'the title high light'
    print(str.rsplit('l'))     #从右边开始切片为***列表***,count;相应地列表合并为字符串要用join
    print(str2.split('i',2))   #默认是空格,count表示分几次
    print(str2.splitlines())
    
    print(str.swapcase())   #大小写变换
    print(str.zfill(40))     #向左填充指定位

    二、列表

    1.通过列表和索引操作列表(略)

    2.列表操作:A-Z

    list = [1,2,3,5,7,6,9,4,3]
    
    list.append(4)  #附加元素
    print(list)
    
    print(list.count(3))
    
    list.clear()  #清空,输出一个空列表
    print(list)
    
    li = list.copy()
    print(li,list)
    print(id(li),id(list))   #和直接赋值的区别在于开辟一块内存再储存一份,因此它们的内存地址不同
    
    list2 = ['yangxl','xiaoming','dingcq']
    list.extend(list2)
    print(list,list2)   #被扩展的list改变,用以扩展的list2不变
    
    print(list.index(3))   #元素首次出现的索引
    
    list.insert(3,'python')   #在指定位置插入元素
    print(list)
    
    list.pop(3)   #如果不指定索引,默认删除最后一个元素
    print(list)
    
    list.remove(3)  #删除第一个值为3的元素,而不是索引为3的元素
    print(list)
    
    list.reverse()
    print(list)
    
    list.sort(reverse=True)  #貌似好像只能是数值型才能排序,顺序/逆序
    print(list)

    三、元组

      元组是不可变类型,只能进行查操作,不能进行增删改。

    tu = (12,34,'羊小羚','rmb','%&','hello world')
    tu.count()
    tu.index()

    四、字典

    1.字典是Python中唯一的映射类型,采用键值对(key-value)的形式存储。Python对key进行哈希运算,根据运算结果决定value的存储地址,所以字典是无序存储的,而且key必须可哈希。可哈希表示key必须是不可变类型,比如,数字、字符串、元组。字典的两大特点:无序,键唯一。

    2.创建字典的方法:

    dict1 = {'name':'羊小羚','age':18,'sex':'male'}  #这是最常用的方法
    print(dict1)

    3.当字典中存在相同key时,前面的将会被后面的覆盖

    dict3 = {'name':'alex','age':36,'age':'liu','sex':'male'}
    print(dict3['age']) 
    print(dict3)   #字典没有顺序

    4.字典操作方法:A-Z

    dict1 = {'name':'yangxl','sex':'male','age':36}
    
    dict1['age'] = 18
    dict2 = dict1.copy()    #1.和直接赋值的区别在于开辟一块内存再储存一份,因此它们的内存不同
    print(dict1,dict2)
    print(id(dict1),id(dict2))
    
    dict1.clear()       #2.清空,变成一个空字典
    print(dict1)
    
    dict2 = dict.fromkeys(['mon','tus','wen','thi','fri','sat'],'sun')   #3.映射,多对一创建;字典特有的方法。
    print(dict2)
    
    dict2 = dict1.get('sex')    #4.查询key对应的value,或者是否存在这个key-value;字典特有的方法。
    print(dict2)
    
    print(dict1.items())    #5.dict_items([('sex', 'male'), ('name', 'alex')])
    print(type(dict1.items()))   #<class 'dict_items'>
    print(dict1.keys())   #6.打印出字典的关键字
    print(type(dict1.keys()))      #<class 'dict_keys'>
    print(dict1.values())   #7.dict_values(['male', 27, 'alex'])
    print(type(dict1.values()))   #<class 'dict_values'>
    
    print(dict1.popitem())   #8.删除键值对并返回剩余内容
    
    print(dict1.pop('sex'))    #9.删除键并返回值
    
    dict1.setdefault('age',28)    #10.如果age存在就保留默认值,否则添加一个键值对
    print(dict1)
    
    print(dict1)
    dict2 = {'hobby':'ead'}
    dict1.update(dict2)   #11.更新dict1,dict2不受影响
    print(dict1,dict2)
  • 相关阅读:
    JavaScript indexOf() 方法 和 lastIndexOf() 方法
    JS处理四舍五入函数 toFixed(n)(可取小数点后n位)
    animate支持的css属性
    jquery 停止动画 stop的几种用法
    js动态创建style节点(js文件中添加css)
    在CSS中定义a:link、a:visited、a:hover、a:active顺序
    网站设计如何适合用户的操作习惯?
    mongoDB入门必读
    堆栈简析
    单例模式
  • 原文地址:https://www.cnblogs.com/yangxiaoling/p/5813597.html
Copyright © 2020-2023  润新知