Python第一天

# 注释
# 单行注释
'''
    多行注释
    多行注释
    多行注释
'''

"""
    多行注释
    多行注释
    多行注释
"""

# 变量
# 命名
'''
    变量的定义要求:
        1.命名要求: 字母、数字、下划线
        2.注意: (1)数字不能作为开头
               (2) 不能以关键字作为变量名
'''
i = 'hello world'
print(i)

# 关键字
import keyword

print(keyword.kwlist)

# 变量定义
# 定义即赋值,定义的时候不需要去指定数据的类型,Python执行器可以自动判断
var1 = "word"
print(var1, type(var1))

var1 = 1
print(var1, type(var1))

# print函数
print(1, 2, 3, 4)
print("hello", end='')
print("world")

# 5种基础数据类型
'''
    整型: int
    字符串: str
    小数: float
    布尔类型: bool
    空类型:NoneType

注意:
    1.bool类型中的True和False是需要首字母大写
    2.变量类型可以自动去判断
    3.字符串中单引号和双引号不区分
'''
# 整型
var1 = 1
print(var1, type(var1))

# 字符串
var1 = "str"
print(var1, type(var1))

var1 = 'str'
print(var1, type(var1))

# 小数类型
var1 = 1.1
print(var1, type(var1))

# 布尔
var1 = True
print(var1, type(var1))

# 空类型
var1 = None
print(var1, type(var1))

# 类型之间的相互转换

# 从字符串转换成int类型
# 字符串转换成int
s = '1'
print(int(s), type(int(s)))

# 字符串转换成浮点型
s1 = "1.1"
print(float(s1), type(float(s1)))

# float转换成int类型
f1 = 3.14
print(int(f1), type(int(f1)))

# 丢失精度时 不会去做四舍五入
f1 = 3.6
print(int(f1), type(int(f1)))

# 数值0 转换成bool类型时 会默认转换成False
# 数值1 转换成bool类型时 会默认转换成True
b = 0
print(bool(b), type(bool(b)))
b = 1
print(bool(b), type(bool(b)))
b = 3
print(bool(b), type(bool(b)))

print(">" * 50)
# 字符串的常见操作
str1 = "java Python scala sql"

# split 切分
str2 = str1.split(" ")
print(str2, type(str2))

# strip 去除字符串两边的隐藏字符
# \t 表示一个制表符
# \n 表示换行
# \r 表示回车
str3 = " \t \n java Python scala sql \t \n \r"
print(str3)
str4 = str3.strip()
print(str4, type(str4))

# 字符串的切分
# 规则:[开始位置:结束位置:步长]
# 开始位置是从0开始 结束位置不包含 即 取值区间是一个左闭右开区间 [开始位置:结束位置)
#
print(str1[5:11])

# 步长
print(str1[5:11:2])

# 反转
print(str1[::-1])
# 反转Python
# 负值取值是从后往前数
print(str1[-11:-17:-1])

# 获取字符串长度
print(len(str1))

# 字符串中的索引
print(str1[0])

# 格式化
a = 10
b = 3
print(a, ' * ', b, ' = ', a * b)

# 方式一
str_format = "{} * {} = {}"
print(str_format.format(a, b, a * b))

# 方式二
# %d 表示 数字
# %s 表示 字符串
# %f 表示 浮点型
# %.nf 表示 输出小数点后n位
print("%d * %d = %d" % (a, b, a * b))
print("%s * %d = %d" % ('4', b, a * b))
print('%f' % 3.14)
print('%.1f' % 3.14)

# 算术运算符
# + - * / % // **
# Pycharm 快捷键 Ctrl + D 表示复制当前行至下一行
# // 表示整除 ** 表示次方
a = 10
b = 3
print(a + b)  # 13
print(a - b)  # 7
print(a * b)  # 30
print(a / b)  # 3.33333...
print(a % b)  # 1
print(a // b)  # 3
print(a ** b)  # 1000

# 如果是两个 ** 号 则需要从后往前计算
print(2 ** 3 ** 2)  # 512
# 如果是两个 // 号 则需要从前往后计算
print(10 // 3 // 2)  # 1

# Python的数据容器,Java中的集合(Collection)
'''
    1.列表 List
    2.元组 tuple
    3.集合 set
    4.字典 dict
'''

# 列表 list
# 定义: 用[] 定义一个list
'''
    特点:
        1.可以存储不同类型的数据
        2.可以存储相同数值数据
        3.存储数据内容是有序的
        4.列表中的元素是可以被删除的 
        5.列表中可以嵌套列表
'''
list1 = [1, 1, 2, 3, 1.1, True, "str"]
print(list1)

# 取元素
# 通过索引(index)取值,从0开始取值
print(list1[0])

# 切片
# 规则:[开始位置:结束位置:步长]
print(list1[::])
# 反序列取值
print(list1[::-1])

# 修改元素
list1[2] = "A"
print(list1)

# 删除元素
# pop方法:删除列表中最后一个元素
list1.pop()
print(list1)

# remove:删除列表中指定的值,如果出现重复,那么就删除第一个出现的值
list1.remove(1)
print(list1)

# 增加元素
# append:在列表的末尾进行追加元素
list1.append([1, 2])
print(list1)

# insert:在列表的指定索引位置插入元素
list1.insert(4, False)
print(list1)

# 其他函数
# 排序
list2 = [3, 4, 1, 2]
list2.sort()
print(list2[::-1])

# 合并
# extend函数:讲另外一个列表追加到当前列表之后
list3 = [6, 7, 8, 9]
list1.extend(list3)
print(list1)

# +: 将两个list 合并成一个新的 list
list4 = list2 + list3
print(list4)

# 反转
list4.reverse()
print(list4)

# 统计
list5 = [1, 1, 2, 3, 1]
print(list5.count(1))

# 清除
list5.clear()
print(list5)

# 元组
# 定义 通过() 进行定义
'''
    特点:
        1.可以存储重复数据
        2.可以存储不同类型的数据
        3.元组是有序的
        4.元组是不支持修改
        
'''
print('>>>>' * 40)
tuple1 = (1, 1, 2, 3, 1.1, True, "str")
print(tuple1)

# 取元素
print(tuple1[3])

# 改变元素
# tuple1[3] = "A"
# print(tuple1)

# 其他方法
# count:统计
print(tuple1.count(1))

# set 集合
# 定义 set集合使用{}
'''
    特点:
        1.set集合可以存储不同类型数据
        2.set集合是无序的
        3.set集合存储不了重复数据
'''

set1 = {1, 1, 2, "hello", False, 1.1}
print(set1)

# 取元素
# set集合不能通过下标进行取数据
# print(set1[2])
for i in set1:
    print(i)

# 删除数据
set1.pop()
print(set1)

set1.remove("hello")
print(set1)

# 增加元素
set1.add(1)
set1.add(2)
set1.add(3)
print(set1)

# 集合运算
set2 = {2, 3, 4}
set3 = {3, 4, 5}
print(set2 & set3)  # {3,4}
print(set2 | set3)  # {2,3,4,5}
print(set2 - set3)  # -号是指去除set2中set2与set3重复的元素

# 字典
# 定义:{K:V}
'''
    特点:
        1.不可以存储相同Key的数据,默认存储后一个相同Key的Value值
        2.需要通过Key进行取值
        3.当Key中出现0和TRUE以及1和False后会出现相同key替换现象(特点1)
        4.字典中的Key为不可变元素,Value中可以存储任意类型元素
        5.字典中的Value值可以直接根据类型取出
        6.查询速度并不会随着元素的增多变慢
        
'''
dict1 = {
    'x1': "x1",
    'x1': "x2",
    1: "1",
    0: "0",
    True: "true",
    False: 'false',
    (1, 2, 3): "tuple(1,2,3)",
    # [1, 2, 3]: "list[1,2,3]",
    "xx1": [1, 2, 3],
    "xx2": {
        "xxx1:": "vvv1",
        "xxx2": {"xxxx1": "4x1"}
    }
}
print(dict1)

# 取元素
# 无法通过下标index进行取值
# print(dict1[2])

# 通过Key进行取值
# 方式一:
print(dict1['x1'])
# 方式二:
dict1.get("x1")

# 改变Key对应的Value值
dict1['x1'] = 'x3'
print(dict1)

# 常规操作
print("所有keys:", dict1.keys())
print("所有values:", dict1.values())
print("所有k-v:", dict1.items())

# 扩充字典
print(dict1)

# 取嵌套字典值
print(dict1.get('xx2').get('xxx2').get('xxxx1'))

# 遍历容器
'''
    1.列表 List
    2.元组 tuple
    3.集合 set
    4.字典 dict
'''
# 遍历列表
ls1 = [3, 4, 5]
for i in ls1:
    print(i)

# 遍历元组
tup1 = (3, 4, 5)
for t in tup1:
    print(t)

# 集合Set
set4 = {4, 4, "hello", True}
for s in set4:
    print(s)

# 字典dict
dict2 = {
    'xx1': "xx1",
    'xx2': "xx2",
    'xx3': "xx3",
}

for key in dict2.keys():
    print(key)

for values in dict2.values():
    print(values)

for kv in dict2.items():
    print(kv[0], kv[1])

for k, v in dict2.items():
    print(k, v)

# range 函数
# range 传值是一个区间,区间是左闭右开区间,起始位置如果是0 可以不写
for i in range(10):
    print(i)

# 步长
for j in range(1, 10, 2):
    print(j)

# 需求:获取一个从1...100的列表
# 方式一:
list6 = []
for i in range(1, 101):
    list6.append(i)
print(list6)

# 方式2:
# 列表推导式
list7 = [i for i in range(1, 101)]
print(list7)

# 需求:获取一个从1...100的奇数列表
# 方式一:
list7 = [i for i in range(1, 101, 2)]
print(list7)

# 方式2:
# 列表推导式
list7 = [i for i in range(1, 101) if i % 2 == 1]
print(list7)

# join 和 split
str2 = "java,python,scala"
print(str2.split(','))
list8 = str2.split(',')
print(','.join(list8))

# 九九乘法表
print("\n".join(['\t'.join(['{} * {} = {}'.format(j, i, j * i) for j in range(1, i + 1)]) for i in range(1, 10)]))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值