zoukankan      html  css  js  c++  java
  • 补充知识及数据类型


    一、补充内容
    1、赋值方式:
    1.1 链式赋值
    x = 1
    y = x
    上述两行代码可简化为下面代码,更为方便并且可以继续叠加
    y = x = a = b = c = 1

    1.2 交叉赋值
    m = 1
    n = 2
    如果将n和m的值相互调换常规如下写需要一个暂存的变量
    temp = m
    m = n
    n = temp
    print(m, n)
    由于上述方法过于麻烦于是出现了如下简化写法,其运行结果并无差别
    m, n = n, m
    print(m, n)

    1.3 变量的解压
    将下面所有列表里的元素单独提取出来:
    salaries = [11, 12, 13, 14, 15]
    mon1_sal = salaries[0]
    mon2_sal = salaries[1]
    mon3_sal = salaries[2]
    mon4_sal = salaries[3]
    mon5_sal = salaries[4]
    简化写法称为解压示例如下:
    mon1_sal, mon2_sal, mon3_sal, mon4_sal, mon5_sal = salaries

    print(mon1_sal)
    print(mon2_sal)
    print(mon3_sal)
    print(mon4_sal)
    print(mon5_sal)
    注:取出的值必须与列表内一一对应,无论哪一边多或者少都会报错
    如果你只想取其中一部分,可以使用_下划线来占位置,这是约定的写法。
    mon1_sal, _, _, _, mon5_sal = salaries
    假如只想去开头和结尾,或者只想取单独开头或者结尾,可以使用 *_ 进行
    占位,这个符号表示无限量的占位直到与列表内一一对应。
    mon1_sal, *_, mon5_sal = salaries
    print(mon1_sal, mon5_sal)

    *_, x, y = salaries
    print(x, y)

    2、input与raw_input
    在python3中:
    input() 把用户输入的内容全都存为字符串类型

    在python2中: (了解即可)
    raw_input() 把用户输入的内容全都存为字符串类型
    input('>>: ') 必须输入明确的数据类型,输入什么就存成什么类型
    int(input('>>:::::'))

    3、while +else (了解即可)

    count = 1
    while count < 6:
    if count == 4:
    break
    print(count)
    count += 1
    # break
    else:
    print('else的代码块只有在while循环没有被break打断的情况下才执行(最后执行)')

    二、数字类型
    1.基本使用
    int用途:年龄,等级,各种号码等使用整数的地方。
    定义方式:
    age=10 #age=int(10)

    float用途:身高,体重,薪资等使用小数的地方。
    定义方式:
    height=1.81 #height=float(1.81)

    2.常用操作+内置的方法
    print(bin(3)) #十进制转成二进制,0b11
    print(oct(8)) #十进制转成八进制,0o10
    print(10) #10
    print(hex(16)) #十进制转成十六进制,0x10


    3.int与float类型总结
    数字类型只能存一个值
    !!!数字类型为不可变:值变,id就变。

    (了解:可变==不可hash,不可变==可hash)

    三、字符串类型

    1. 基本使用
    str用途:描述性的数据,比如名字国籍学历家庭住址

    定义方式:在单引号或双引号或三引号内的一串字符,三引号内可以写多行内容。
    name='egon' #name=str('egon')
    掌握:
    str(10) #int('10')字符串


    了解知识
    res=str(10)
    res=str([1,2,3,4])
    print(res,type(res))
    int('10')
    res=float('10.3')
    print(res,type(res))


    2. 常用操作+内置的方法
    优先掌握的操作:
    1、按索引取值(正向取+反向取) :只能取不能修改。
    name='egon你好'
    print(name[0])
    print(name[4])
    print(name[1000])

    print(name[-1])
    print(type(name[-2]))
    name[-1]='坏'

    2、切片(顾头不顾尾,步长)
    msg='alex say my name is sb'
    print(msg[0:6])
    print(msg[0:6:2]) #alex s
    了解:
    print(msg[0:5:1])
    print(msg[3:1:-1])
    print(msg[-1:-5:-1])
    msg='alex is sb'
    print(msg[0:10:1])
    如果要取所有的字符可以不写开头和结尾
    print(msg[:])
    print(msg[::1])
    print(msg[::-1])

    3、长度len 用来计算字符串内字符的位数
    msg='alex say my name is sb'
    print(len(msg)) # 字符的个数
    4、成员运算in和not in 用来检验指定字符是否在某个字符串内有。
    msg='alex say my name is sb'
    print('alex' in msg)
    print('alex' not in msg)

    5、移除空白strip 使用时.strip()括号内不加东西为默认去除空格,如果添加字符则去除添加的字符。
    s='*****egon****'
    print(s.strip('*'))
    s=s.strip('*')
    print(s)

    name=' egon '
    print(name.strip())

    改进
    name=input('用户名>>: ').strip()
    print(len(name))
    name=name.strip()
    if name == 'alex':
    print('用户名正确')

    6、切分split 切分出来的字符会自动新建一个列表并储存在内
    info='egon:123:admin'
    res=info.split(':')
    print(res,type(res))
    print(res[0])

    cmd='get|a.txt|32123123'
    print(cmd.split('|'))

    7、循环
    msg='alex'

    i=0
    while True:
    if i < len(msg):
    print(msg[i])
    i+=1
    else:
    break



    msg='alex'

    i=0
    while True:
    if i == len(msg):
    break
    print(msg[i])
    i+=1


    msg='alex'

    i=0
    while i < len(msg):
    print(msg[i])
    i+=1

    msg='alex'
    for item in msg: #item='l'
    print(item)
    for 循环是将msg内的每个字符分别赋值给item

    for item in 11111: # 只有字符串,列表,字典可以使用for循环 数字类型因为不可分割不能使用。
    print(item)
  • 相关阅读:
    集体编程智慧(发现的一些代码问题)
    jQuery实现图片伦播效果(淡入淡出+左右切换)
    require
    小技巧
    JavaScript--面向对象--猜拳游戏
    简单封装cookie操作
    less
    进程相关

    线程和进程相关
  • 原文地址:https://www.cnblogs.com/zhaodafa/p/8603041.html
Copyright © 2011-2022 走看看