python数据类型 
  • Number(数字) :int、float、bool、complex(复数)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

布尔类型

#布尔 True False #真 假

# and
#True True -->true
#Flase False -->false
#True False -->fasle
#or
#True True -->true
#Flase False -->false
#True False -->true

 

字符串格式化:
%s 什么类型都可以
%d 只能是数值型的,它不保留小数,只取整数,如果写了字符串会报错
%f 只能是数值型的,保留小数,如果写了字符串会报错

import datetime
name = input("欢迎登陆,请输入你的名字:") #接收输入的
#py2里面 raw_input()
today = datetime.datetime.today()
words5 = "欢迎登陆," + name + ",今天的日期是" + str(today)
words6 = "欢迎登陆,%s,今天的日期是%s" % (name,today)
print(words5)
print(words6)

 

 
运算符
age = 5
sum = age + 1
number = age - 1
number2 = age * 3
number4 = age / 4 #正常,在python2里面它就是地板除,如果你要变成正常的除法,那么除数或者被除数要有一个是小数类型
number5 = age // 4 #地板除,只保留整数部分
number6 = 2**3 #取N次方的,2的3次方
number7 = 10 % 3 #取余,取模,取余数的意思
print(sum)
print(number)
print(number2)
print(number4)
print(number5)
print('取次方的',number6)
print('取余的结果',number7)

 

变量定义
age = 10.123
# age2 = input("请输入你的年龄:")#input接收到的始终都是str类型
# age2 = int(age2)
age2 = 10
# age2 = int( input("请输入你的年龄:")) #input接收到的始终都是str类型,需要转换成int类型
#int str float
print("age的类型",type(age))
print("age2的类型",type(age2))
age3 = age + age2
print(age3)
name = "aaa"
#%s %d %f
print("新的年龄是 %s" % age3)

 

数组增加、修改、删除等

students = "曾若天,吴康飞,刘慧杰"
#数组,列表
stus = [ "曾若天","吴康飞","刘慧杰" ]
# 下标   0 1 2
#取元素
print(stus)
print(stus[-1])

#新增
stus.append("candy")
stus.append("李雪松")
stus.insert(0,"赵莹莹")
stus.insert(2,"李兴培")
#修改
stus[2] = "python"
# stu = "111"
# if stu in stus:
# index = stus.index(stu) #如果查找不存在元素,会报错
# stus[index] = "邓金娇"
# print(stus)
#删除
stus.append("candy")
print(stus)
# stus.pop() #删除末尾的元素
# stus.pop(0)#删除指定下标的
# stus.remove("candy")#删除指定的元素,只删除第一个
# del stus[0]

# print( stus.count("candy") )#查找元素出现的次数
nums = [82,23,235,236,121,1,0,3,25,26]
# # nums.sort()#排序,默认是升序
# nums.sort(reverse=True)#排序,默认是升序,会改变原来list的值
# print(nums)

# nums.reverse()#反转list,会改变原来list的值
# stus.clear()#清空list
stus.extend(nums) #把另外一个list里面的元素都加入到一个list里面
print(stus)

 

#多维数组

l = [1,2,3,4,5,6,[7,8,9,10,11]] #2维数组
l2 = [1,2,3,4,5,6,
    [ 7,8,9,10,11,["zengruotian",'abc']]
  ] #3维数组
print(l[-1][3])
print(l2[-1][-1][0])

 

 
元祖
#tuple
l = [1,2,3]
t = (1,2,3)
print(t[0])
for i in t:
    print(i)
info = ("118.23.3.40", "root", "123456", "3306")
print(info.count("root"))
print(info.index("root"))
info = ("118.23.3.40", "root1", "123456", "3306")
print(info)

 

判断语句
# if xxx:
#     xxx
# else:
#     xxxx

username = "admin"
password = "123456"
username2 = "xiaohei"
#
# u = input("请输入用户名:")
# p = input("请输入密码:")
#
# # if (u == username or u == username2) and p == password:
# #     print("登录成功,欢迎%s登录" % username)
# # else:
# #     print("账号/密码错误!")
#
# if u == username or u == username2:
#     if p == password:
#         print("登录成功")
#     else:
#         print("密码错误")
# else:
#     print("账号不存在")





#账号输入admin和小黑都可以,密码是123456

# if u == username:
#     print("你是admin用户")
# elif u == username2:
#     print("你是普通用户")
# else:
#     print("用户名不正确")


sex = input("请输入性别:")

# print(len(sex)) #取长度

sex_str = "男女"


# if sex in sex_str and len(sex) == 1:
#     print("性别合法")
# else:
#     print("你可能不是地球人")


if sex not in sex_str:
    print("不合法")
elif len(sex) != 1:
    print("不合法")
else:
    print("性别合法")


# sex1 sex2
# if sex1 in sex_str or sex2 in sex_str:


# if sex == "男" or sex == "女":
#     print("合法")
# else:
#     print("你可能不是地球人")

#比较运算符
#  ==
#  >
#  <
#  >=
#  <=
#  !=
#并且  或  and  or
#in 在xxx里面
#not 不

 

#循环、迭代、遍历,重复做某件事情
for while

continue #如果在循环里面遇到continue,那么结束本次循环,立马进行下一次循环
break #如果在循环里面遇到break,循环立即结束,不管还有多少次没有循环

while 循环,使用循环的话需要定义一个计数器,用来控制循环次数
对应的else,如果循环是正常结束的,那么会执行else里面的代码,如果循环是被break结束的,不会执行
编译型

while,计数器
import random
 number = random.randint(1, 100)
 count = 7
 while count > 0:
     count = count - 1
     guess = input("请输入一个数字:")
     guess = int(guess)
     if guess == number:
         print("恭喜你猜对了,数字是%s" % number)
         break
     elif guess < number:
         print("猜小了,剩余%s次" % count)
         continue
     elif guess > number:
         print("猜大了,剩余%s次" % count)
         continue
 else:
     print("游戏结束,次数已经达到上限")
 
for循环:
import random
number = random.randint(1, 100)
for i in range(7):
    guess = input("请输入一个数字:")
    guess = int(guess)
    if guess == number:
        print("恭喜你猜对了,数字是%s" % number)
        break
    elif guess < number:
        print("猜小了")
        continue
    elif guess > number:
        print("猜大了")
        continue

 

 
#循环list
import os
l = ['赵莹莹', '曾若天', 'python', '吴康飞', '刘慧杰', 'candy', '李雪松']
#麻烦的方式,计算下标去取值 index = 0 while index < len(l):     name = l[index]     os.mkdir(name) #创建文件夹     index = index + 1

 for index in range(len(l)):     print(l[index])

 for name in l:#直接循环list,就是取list里面的每个元素     os.mkdir(name)
     print(name)
 #写一个录入学生信息的程序,
 # 接收输入学生名称,判断学生是否存在,如果存在的话,提示已经存在,继续添加,
 #如果不存在的话,加入到list里面,继续添加
 
 
 students = ["zengruotian","candy"] #list()
 while True:
     name = input("请输入学生名称:")
     if name == "quit":
         print("程序退出,现在的学生名单是",students)
         break
     elif students.count(name) == 0:
         students.append(name)
         print("添加成功,现在的学生名单是",students)
         continue
     else:
         print("学生已经存在,请重新输入")
continue #不存在的、存在的、quit

 

 
操作字典
# 曾若天  18 180 150 北京
stdents = [
    ["曾若天","18","180","150","北京"],
    ["liuhuijie","18","180","150","北京"],
    ["candy","18","180","150","北京"],
    ["lixuesong","18","180","150","北京"],
]

student_info = {
    "addr": "北京",
    "name":"曾若天",
    "age":18,
    "high":180,
    "tizhong":150,
}
#增
# student_info["age"] = 19
# student_info["money"] = 300000
# student_info.setdefault("car","bmw")
#如果是已经存在的key,setdefault不会修改已有的值

#修改
student_info["age"] = 19
#取值
# print(student_info["name"])
# print(student_info["age"])
# print(student_info.get("addr"))
# print(student_info.get("tizhong"))

#删除

# student_info.pop("age")
# del student_info["age"]
# student_info.popitem() #删除最后一个元素

#其他的方法
# student_info.clear() #清空
# d = {"phone":110}
# student_info.update(d) #合并两个字典
# print(student_info.values())
# print(student_info.keys())
# print(student_info.items())
#
# print("name" in student_info.keys())
# print("name" in student_info)#直接用in判断的话,就判断这个key是否存在

#student_info.has_key("name")#python2里面有,python3里面没有

# print(student_info)

# for key in student_info:#直接循环字典,每次取的是字典的key,比较高效的方式
#     value = student_info[key]
#     value2 = student_info.get(key)
#     print("%s -> %s" %(key,value))
#     print("%s -> %s" %(key,value2))
#
for key,value in student_info.items():
    print("%s  %s" %(key,value))

字典嵌套 

info = {
    'lgy':{
        'age':18,
        'addr':'beijing',
        'cars':['bmw','ben-z','audi']
    },
    'fd':{
        'house':{
            'bj':['海淀区','昌平区','朝阳区','西城区'],
            'sh':['静安区','闸北区']
        },
        'money':5000
    }
}

info["lgy"]["cars"].append("tesla")
# print(info)
#方丹 海淀区房卖了,卖了500w
index = info["fd"]["house"]["bj"].index("海淀区")
info["fd"]["house"]["bj"].pop(index)
# info["fd"]["house"]["bj"].remove("海淀区")
info["fd"]["money"] = info["fd"]["money"]+500
info["fd"]["money"]+=500
print(info)

 

 

 
posted on 2021-04-18 12:57  python测开搬砖人  阅读(185)  评论(0编辑  收藏  举报