与用户交互

img

# 输入
# 获取用户输入
   username = input('请输入您的用户名>>>:')
   '''将input获取到的用户输入绑定给变量名username'''
   print(username, type(username))
   # input获取到的用户输入全部都会转成字符串
   
# 输出
print()
   1.括号可以使用逗号隔开多个元素一起打印
   2.自带end参数 可以控制打印的排版
  print(123,end='\n')
       print(123,end='$')

格式化输出

img

将字符串中某些内容替换掉再输出就是格式化输出

res = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
print(res % ('jason', 11, 100, 99999999999))
print(res % ('tony', 11, 200, -100))
print(res % ('kevin', 11, 500, -999))
"""
1.先使用占位符占位 %s
2.再使用%按照位置一一替换
"""

# %d只能给数字占位(了解)
print('%08d' % 123)
print('%08d' % 1)
print('%08d' % 666)
print('%08d' % 6666666666666)

运算符

算术运算符

image-20211103161937360

比较运算符

img

赋值运算符

img

增量赋值(偷懒)

img

n = 666
n = n + 1 # n += 1  
n = n - 1 # n -= 1
n = n * 1 # n *= 1
n = n / 1 # n /= 1

 

链式赋值(偷懒)

img

如果我们想把同一个值同是赋值给多个变量名
x = 666
y = x
z = y
链式赋值指的是可以用一行代码搞定这件事
x = y = z = 666

交叉赋值

img

定义两个变量
m = 10
n = 999
错误解答
m = n
n = m
print(m,n) # 999 999
方式1 利用中间变量
如果我们想把m与n的值交换过来 可以这么做
tmp = m
m = n
n = tmp
print(m, n) # 999 10
方式2 交叉赋值
交叉赋值指的是可以用一行代码就可以解决了
m, n = n, m
print(m, n) # 999 10

解压赋值

img

  name_list = ['jason', 'kevin', 'tony', 'jack']
    name1 = name_list[0]
    name2 = name_list[1]
    name3 = name_list[2]
    name4 = name_list[3]
    解压赋值
name1, name2, name3, name4 = name_list  # 左右两边个数相等
name1, name2, name3 = name_list  # 少一个不行
name1, name2, name3, name4, name5 = name_list  # 多一个也不行
进阶用法:可以打破上述规律  特殊符号 *
name1, *_, name2 = name_list
print(name1, _, name2)  # jason ['kevin', 'tony'] jack
name1, *_ = name_list
name1, name2, *_ = name_list
'''
*可以接受多余的元素 组织成列表赋值给后面的变量名
下划线单独作为变量名 通常表达的意思指向的值没有啥用
'''

逻辑运算符

img

在python逻辑运算符就三个

and
用于连接多个条件并且多个条件必须都成立才可以
or
用于连接多个条件并且多个条件只要有一个成立即可
not
取反
 
print(2 > 1 and 1 != 1 and True and 3 > 2)
print(2 > 1 or 1 != 1 or True or 3 > 2)
print(not True)
"""三个连接符号如果混合使用 是有优先级的"""
但是我们在编写的时候应该人为的规定好优先级

 

### 成员运算
判断某个个体在不在某个群体内
关键字:in(在)  not in(不在)
name_list = ['jason', 'kevin', 'tony', 'jackson']
name = input('请输入您要查询的学生姓名>>>:')
print(name in name_list)
print(name not in name_list)

print('j' in 'jason j j j n n')
print('jason' in {'username': 'jason', 'age': 18})  # False
	字典默认暴露给外界的只有K
print('username' in {'username': 'jason', 'age': 18})

image

image

image

image

image

身份运算

# 判断两个数据 值和内存地址是否相等
符号: ==(只判断值)  is(判断内存地址)
    s1 = ['jason', 'kevin', 'tony', 'jackson']
    s2 = ['jason', 'kevin', 'tony', 'jackson']
    print(s1 == s2)  # True
    # print(id(s1),id(s2))
    print(s1 is s2)  # False
"""
值相等内存地址不一定相等
内存地址相等值一定相等
"""

image

posted on 2021-11-03 17:17  狼行千里吃肉  阅读(57)  评论(0)    收藏  举报

import time with open('a.txt', 'rb') as f: f.seek(0, 2) while True: line = f.readline() if len(line) == 0: # 没有内容 time.sleep(0.5) else: print(line.decode('utf-8'), end='')