首页 > 编程语言 >python5

python5

时间:2022-09-26 21:36:38浏览次数:60  
标签:jason name list print python5 数据 tony

python数据类型

数据类型-布尔值(bool)

1.判断失误的对错  是否可行 只用于流程控制中
2.只有两种状态:
    True   对的
    False  错的
3.python中所有数值自带布尔值
    布尔值为False的数据有:0 None '' []  {}
    布尔值为True的数据有:除了上面的都是True
4.储存布尔值的变量名一般推荐使用is开头
         is_delete = False
         is_alive = True
 """
 很多程序的注销功能,其实底层并没有删除数据,而是修改了
 数据的状态  例如:
 id        username    password   phone    is_delete
 1         kun         123        110       1
 2         kun2        456        119       0
 """       

数据类型-元组(tupel)

1.'不可变'的列表
    元组内索引绑定的内存地址不能修改
2.小括号括起来  内部存放多个数据值  数据值与数据值之间都好隔开
数据值可以是任何数据  代码实现效果如下
           t1 = (33,66,'jason')
4.元组与列表的对比
    # l9 = [36,98,77]
    # print(l9[0])
    # l9[0] = 6666
    # print(l9)  #[6666,98,77]
    
    # t6 = (14 ,33,56)
    # print(t6[0])
    # t6[0] = 9999
    # print(t1)
    
    t9 = (22, 77, [999, 888])
    t9[2][1] = 333
    print(t9)     #(22, 77, [999, 333])
  5.元组内如果只有一个数值
         b1 = (1)
      b2 = (11.11)
      b3 = ('jason')
      print(type(b1), tyue(b2), type(b3)) # <class 'int'>
  <class 'float'> <class 'str'>
      b1 = (1,)
      b2 = (11.11,)
      b3 = ('jason')
      print(type(b1), tupe(b2), tyue(b3))  # <class
    'tupel'> <class 'tupel' > <class 'tuple'>
    
    """
    以后在使用可以存放多个数据值的数据类型时  如果里面暂时只有一个数据值 那么建议加上逗号
    """
    

数据类型-集合(set)

1.集合只能用于重合关系运算
2.集合内数据只能是不可变类型
3.大括号括起来  内部存放多个数据值 数据值之间逗号隔开
数据值不是k:v键值对
4.代码举例:s1 = {1, 2, 3, 4, 5, 6, }
5.定义空集合与空字典
    {}   这是默认字典
    set()   定义空集和

与用户交互

1.获取用户数据
    input
    # 获取用户输入
  username = input('请输入您的用户名>>>:')
"""
先执行input获取用户输入
将输入的数据绑定给变量名username
以后在程序中就可以使用变量名反复调用用户数据
"""
注意:input获取到的数据值都会处理成字符串类型

2.输入内部信息
    print
    1.括号内既可以放数据值也可以放变量名 并且支持多个 逗号隔开即可
    2.print自带换行符
          换行符:\r\n  \n(斜杠与字母组合到一起可能会产生特殊的含义)
    3.print也可以切换结束符
           print(数据,end='默认是\n')
      扩展:python2与python3中两个关键字的区别
python2中input方法需要用户自己提前指定数据类型 写什么类型就是什么类型
 raw_input方法与python3中input一致 输入的统一处理成字符串	python2中
    	print方法有两种使用方式
        	print 数据值
           print(数据值)  

格式化输出

提前定义好一些内容  将来需要使用的时候可以局部修改
比如:奖状  入取通知书 合同 
      现实生活中大部分都是用下划线提示别人填写内容
但是在程序代码中需要使用占位符:%s %d
代码实现:
info = '%同学你好'
'''单个占位符'''例子如下:
# print(info % 'jason')  # jason同学你好
# print('%同学你好' % 'tony')  # tony同学你好
# print(info % ('jason',))
# print('%s同学你好' % ('Tony',))

'''多个占位符'''例子如下:
# desc = '姓名:%s 年龄:%s 爱好:%s'
# print(desc % ('jason', 18, 'read'))
# print('姓名:%s 年龄:%s 爱好:%s' % ('tony', 28, 'rap'))

'''注意有几个占位符就需要几个数据值'''
# print('my name is %s my age is %s' %('jason',))
# 以上有两个占位符,数据值只有一个,所以不行
# print('my name is %s my age is %s' %('jason', 18, 'read'))
# 以上只有两个占位符,数据值有三个,多了也不行

'''不同占位符的区别'''
# demo1 = '%s您好  您本月会所消费是%d 余额%s'  # %d常见数据类型都支持
# print(demo1 % ('jason', 5000, 9999999999))

# demo2 = '%d您好 您本月会所消费是%d 余额是%d'
# print(demo2 % ('tony, 30000, 99999999'))
"""%d只支持数字类型"""

print('%08d'% 123)  # 00000123
print('%08d'% 1234324324)  # 1234324324

基本运算符

1.数学运算符
    + - * / % // **
    简化写法
    n = 10
    n += 1  # n = n + 1
    n -= 1  # n = n - 1
    n *= 1  # n = n * 1
    n /= 1  # n = n / 1
    n %= 1  # n = n % 1
    n //= 1  # n = n // 1
    n **= 1  # n = n ** 1
2.比较运算符
	< > <= >= ==(等于号) !=(不等于)

常用运算符

1.链式赋值
    # name = 'jason'
    # name1 = name
    # name2 = name
    # 链式赋值
    name = name1 = name2 = 'jason'
 2.交叉赋值
    举例:m = 100
          n = 999
        要求让m和n互相转换绑定值
    '''中间变量'''
    # temp = m
    # m = n
    # n = temp
    # print(m, n)  # 999 100
    '''交叉赋值语法'''
    m, n = n, m
    print(m, n)  # 999 100
    
 3.解压赋值
       name_list = ['jason', 'kevin', 'tony', 'oscar']
解压赋值语法:# name1, name2, name3, name4 = name_list
'''解压赋值在使用的时候 正常情况下需要保证左边的变量名与右边的数据值个数一致'''
    # a, b = name_list  # 变量名少了不行
    # a, b, c, d, e = name_list  # 变量名多了也不行
    '''当需要解压的数据个数特别多 并且我们只需要使用其中的几个 那么可以打破上述的规则'''
    # a, *b = name_list  # *会自动接收多余的数据 组织成列表赋值给后面的变量名
    # print(a)  # jason
    # print(b)  # ['kevin', 'tony', 'oscar']
    # a, c, *b = name_list
    # print(a)
    # print(c)
    # print(b)  # ['tony', 'oscar']
    # a, *b, c = name_list
    # print(a)  # jason
    # print(b)  # ['kevin', 'tony']
    # print(c)  # oscar
    '''当数据值不准备使用的时候 可以使用下划线作为变量名绑定'''
    a, *_, c = name_list

逻辑运算符

# 主要配合条件一起使用
and 和 and连接的多个条件必须全部成立 结果才成立
eg:
    你去摘西瓜时:要求 必须大的 圆的 里面是红的
大 and 圆的 and 红的
    1 > 2 and 4 < 8 and 10 < 1 and 1 == 2  如果条件中全部由and组成那么判断起来非常的简单 只要发现一个不成立 结果就不成立 
    print(1 < 10 and 666)  # 666  成立
    print(1 < 10 and 2 < 8)  # True  成立
    print(111 and 222)  # 222  成立
    如果需要你准确的说出具体的结果值  那么需要按照下列方式
    如果and左边的条件是成立的 那么就完全取决于右边的条件
    右边如果直接是数据值 那么结果就是该数据值 如果是含有表达式 则为布尔值
    
  or或者 or连接的多个条件有一个成立,结果就成立 
    # print(1 < 10 or 666)  # True
    # print(666 or 1 > 10)  # 666
    print(0 or False)  # False
    print(0 or 111)  # 111
    
    not类似于女孩子说反话
    
    
'''三者混合使用的时候有优先级之分 但是我们不需要记忆优先级 应该通过代码的形式提前规定好优先级
	eg: 先乘除有加减  但是可以使用括号来改变优先级
	(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)
'''


成员运算符

判断个体在不在群体内

# name_list = ['jason', 'kevin', 'oscar', 'jerry']
# print('tony' in name_list)  # False
# print('tony' not in name_list)  # True
# print('j' in name_list)  # False 列表最小单位是数据值  不能再细分

# s1 = 'hello world'
# print('d' in s1)  # 字符串最小单位是单个单个的字符

d1 = {'username': 'jason','pwd': 12}
print('jason' in d1)  # False 字典成员运算只有键参与
print('username' in d1)  # True      'username' 'pwd'

身份运算符

"""
id()  返回一串数字 该数字可以看成是内存地址
"""
is		判断内存地址是否相同
==     判断数据值是否相同

# l1 = [11, 22, 33, 44, 55, 66, 77, 88]
# l2 = [11, 22, 33, 44, 55, 66, 77, 88]
# print(l1 == l2)  # True
# print(id(l1))
# print(id(l2))
# print(l1 is l2)  # False

# 小整数池
i1 = 11
i2 = 11
print(i1 is i2)


s1 = 'jason jason jason'
s2 = 'jason jason jason'
print(s1 is s2)
不同的环境下可能优化的程度不一样 

"""
    了解值相同 内存地址可能不同
    内存地址相同 值肯定相同
"""
个人感觉,新手小白应该先熟悉键盘,多去打代码,多熟悉,我现在打的很慢,但是我也在慢慢的
加快打代码速度和键盘的掌握度

标签:jason,name,list,print,python5,数据,tony
From: https://www.cnblogs.com/lsl1/p/16732556.html

相关文章