python学习记录-day3

1、字符格式化的输出
占位符: %s s = string 字符串
%d d = digit 整数
%f f = float 浮点数,精确6位小数

1、1格式化输出字符
name = input("请输入名字:")
age = int(input("请输入年龄:"))
job = input("请输入工作:")
salary = input("请输入工资:")

if salary.isdigit():  #digit 数字,表示判断像不像数字,比如:13s
    salary = int(salary)
# else:
#     exit("must input digit")   #表示退出程序,并打印提示信息

# %s 表示占位符,s代表字符串
# %d 表示占位符,d代表数字
# %f 表示占位符,f代表浮点数
msg = '''
-------- info of %s --------
Name:%s
Age :%d
Job :%s
Salary:%f
You will be retired in %s years
----------- end -----------
'''%(name,name,age,job,salary,65-age)
#通过 % 后面的各个字段与占位符一一对应

print(msg)
2、数据类型初识
数字:整数 int(integer)
整型
长整型 python3不区分整型和长整型
布尔:只有2种状态,分别是
真 True
假 False
字符串:一般为小数

3、列表、元组:
3.1列表 a = ['','','','','']
3.2查询
索引(下标),都是从0开始
切片
.count 查某个元素出现的次数
.index 根据内容找其对应的位置
'lili' in a
3.3增加
a.append('') 默认将数据加到列表最后的位置
a.insert(index,'内容') 将数据加入到索引的位置
a.extend 将列表的值添加到另一个列表
3.4修改
a[index] = '新的值'
a[start:end] = ['a','b','c']
3.5删除
remove('内容') 删除固定的值
pop pop后面加索引,根据索引删除列表中的数据,并且可以打印删除的数据
del a 或者 del a[index] del既可以删除列表中的某个对象,又可以将列表删除
a.clear() 清空
3.6排序
sort() 将列表的数据由大到小进行排序
reverse() 将列表的数据倒序排序
3.7身份判断
type(a) is list
#1、创建列表
a = ['lili','xixi','xiaoming','xiaohu','pangzi']
#查询列表
print(a[:])  #取全部的索引值
print(a[1])  #取索引1的值
print(a[1:3]) #取索引1-3的值,但不包含索引3
print(a[1:]) #取到最后的索引值
print(a[1:-1]) #取到倒数第二个索引值
print(a[1:-1:1]) #步长为1,从左向右依次取值
print(a[1::2])  #步长为2,从左向右依次取值
print(a[3::-2]) #步长为2,从右向左依次取值

b = a[3::-1]
print(b)

#2、在列表中添加信息
#append 默认将数据插到列表的最后位置
a.append('xiaoli')
print(a)

#insert 将数据插入到任意一个位置
a.insert(1,'xiaoli')
print(a)


#3、修改列表中的数据
a[1] = 'tianye'
print(a)

a[1:3] = ['a','b']
print(a)

#4、删除列表中的数据
#remove  删除固定的值
a.remove('lili')
print(a)

a.remove(a[0])
print(a)

#pop 后面加索引值,根据索引删除列表中的值,可以打印删除的值
a.pop(1)
b = a.pop(1)
print(b)

#del 既可以删除列表中的某个对象,又可以将列表删除
del a[0]
print(a)

del a
print(a)

#计算某元素在列表中出现的次数 count
m = ['a','b','a','c','e','s']
n = m.count('a')

print(n)

#extend 将列表的值添加到另一个列表
a = [1,2,3]
b = [4,5,6]
a.extend(b) #表示将列表b的值添加到a
print(a)
print(b)

#index 索引列表中某个值的位置
a = ['a','b','c','d','c','f','g']

first_c = a.index('c')
print('first_c',first_c)
little_list = a[first_c+1:]

second_c = little_list.index('c')
print('second_c',second_c)

c_list = first_c + second_c


#reverse  将列表的数据 倒序排序
a = ['a','b','c','d','c','f','g']
a.reverse()
print(a)

#sort  将列表的数据进行排序
b = ['7','1','3','8','2']
b.sort()
print(b)


#身份判断
x = type(a) is list
print(x)
4、循环loop
有限循环:次数限制
无限循环:死循环
continue:跳过
break:终止
exit_flag = False

for i in range(10):
    if i < 5:
        continue  #跳过当前循环,继续下个循环
    print(i)
    for j in range(10):
        print("layer2",j)
        if j == 6:
            exit_flag = True
            break  #中断,跳出循环
    if exit_flag:
        break

5、for循环的使用:
for i in range() 注释:range后面括号内加范围
#1-100 取出基数
for i in range(1,100,2):   #2 表示 步长
    print(i)

for i in range(1,100):
    if i % 2 == 1:
        print(i)
5、1只能输入3次用户名、密码,正确则跳出登陆
_user = "lili"
_password = "123abc"

numb1 = False  #假,不成立  设置标识位

for i in range(3):
    username = input("请输入用户名:")
    password = input("请输入密码")
    if username == _user and password == _password:
        print("welcome %s login..." % _user)
        numb1 = True #真,成立
        break   #跳出,中断
    else:
        print("invalid username or password !")

if not numb1:  #只有在True的情况下,条件成立
    print("略略略...")


#---------或者以下方案实现

_user = "lili"
_password = "123abc"

for i in range(3):
    username = input("请输入用户名:")
    password = input("请输入密码")
    if username == _user and password == _password:
        print("welcome %s login..." % _user)
        break   #跳出,中断
        #break for过后,就不会执行最后面的else语句
    else:
        print("invalid username or password !")

#只要上面的for循环正常执行完毕,中间没被打断,就会执行else语句
else:
    print("略略略...")
6、while循环
6、1只能输入3次用户名、密码,正确则跳出登陆,3次错误则提示是否继续玩
_user = "lili"
_password = "123abc"

counter = 1

while counter <= 3:
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username == _user and password == _password:
        print("welcome %s login..." % _user)
        break
    else:
        print("invalid username or password !")
    counter += 1

    if counter == 3:
        keep_going = input("还想玩么?【Y/N】")
        if keep_going == "Y":
            counter == 1

else:
    print("略略略...")

猜你喜欢

转载自www.cnblogs.com/tangdou-tangguo/p/10966610.html