博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习笔记(一)
阅读量:6341 次
发布时间:2019-06-22

本文共 6823 字,大约阅读时间需要 22 分钟。

一、变量和简单数据类型

(一)变量

  • 变量的命名和使用
    • 变量名只能包含字母、数字和下划线。不能以数字开头。
    • 变量名不能包含空格,用下划线。
    • 不要将Python关键字和函数名用作变量名。
    • 要简短、具有描述性。
    • 小写字母l和数字1,大写字母O和数字0

(二)字符串

用引号括起的。(包括单引号、双引号)

  • 使用方法修改字符串的大小
name = 'may zheng' name.title()    # 以首字母大写的方式显示每个单词(其他字母为小写)name.lower()    # 改为全部小写name.upper()    # 改为全部大写
  • 合并(拼接)字符串
# 拼接first_name = 'may'last_name = 'zheng'full_name = first_name + ' ' + last_nameprint('Hello, ' + full_name.title() + '!')
  • 使用制表符或换行符来添加空白
    • 制表符\t
    • 换行符\n
  • 删除空白
language = ' python ' # 不改变变量本身内容language.rstrip()    # 删除末尾空白language.lstrip()    # 删除开头空白language.strip()     # 删除两端空白

(三)数字

加(+)减(-)乘(*)除(/),乘方(**)

  • 整数
  • 浮点数
  • 使用函数str()避免类型错误
# 将非字符串值表示为字符串str(21)

(四)注释

  • 注释用井号(#)标识
  • 一般井号后空一格再标注

二、列表简介

(一)列表

  • 用方括号([])来表示列表,用逗号(,)分隔其中元素
  • 列表是有序集合
  • 访问列表元素,索引从0开始
fruits = ['apple', 'banana', 'orange', 'watermelon']print(fruits[0])    # 访问列表第一个元素,输出appleprint(fruits[-1])   # 访问列表最后一个元素,输出watermelon

(二)修改、添加和删除元素

  • 修改列表元素
fruits = ['apple', 'banana', 'orange', 'watermelon']fruits[0] = 'pineapple'print(fruits)

# 输出['pineapple', 'banana', 'orange', 'watermelon']
  • 在列表中添加元素
fruits = ['apple', 'banana', 'orange', 'watermelon']fruits.append('pineapple')    # 在列表末尾添加元素print(fruits)fruits.insert(1, 'grape')    # 在列表索引1处插入元素print(fruits)

# 输出['apple', 'banana', 'orange', 'watermelon', 'pineapple']['apple', 'grape', 'banana', 'orange', 'watermelon', 'pineapple’]
  • 在列表中删除元素
    • 使用del语句    
del fruits[0]    # 使用del语句删除列表任何位置处的元素,必须知道索引
    • 使用方法pop()删除末尾元素
fruits.pop()    # 弹出列表末尾的值
    • 弹出列表中任何位置处的元素
fruits.pop(0)    # 弹出列表索引0处的元素

PS:如果要从列表删除一个元素,且不再以任何方式使用它,就用del语句;如果要在删除元素后还能使用它,使用方法pop()。

    • 根据值删除元素
fruits.remove('apple')    # 知道要删除的元素的值,使用remove()删除列表元素时,也可接着使用它的值;且remove()只删除第一个指定的值,如果重复出现此值,可通过循环判断

(三)组织列表

调整列表内元素的排列顺序

  • 使用方法sort()对列表进行永久性排序
fruits.sort()    # 永久性地修改列表元素的排列顺序,按字母顺序排列的fruits.sort(reverse=True)    # 按与字母顺序相反的顺序排列列表元素
  • 使用函数sorted()对列表进行临时排序
sorted(fruits)    # 按字母顺序显示该列表sorted(fruits, reverse=True)    # 按与字母顺序相反的顺序显示列表
  • 倒着打印列表
fruits.reverse()    # 永久性反转列表排列顺序
  • 确定列表的长度
len(fruits)    # 使用函数len()可快速获悉列表长度

三、操作列表

(一)遍历整个列表

  • for循环
    • 注意缩进,冒号
fruits = ['apple', 'banana', 'orange', 'watermelon']for fruit in fruits:    # 对于临时变量,可指定任何名称(使用单复数名称很方便);打印列表中的每个元素    print(fruit)

(二)创建数值列表

  • 使用函数range()
for value in range(1,5):    print(value)                  # 打印数字1~4,输出不包含括号第二个值
  • 使用range()创建数字列表
    • 可使用函数list()将range()的结果直接转换为列表
numbers = list(range(1,6))print(numbers)

# 输出[1, 2, 3, 4, 5]
    • 使用函数range()时,可指定步长
numbers = list(range(2,11,2))    # 打印2~10中的偶数print(numbers)

# 输出[2, 4, 6, 8, 10]
squares = []for value in range(1,11):    squares.append(value**2)    # 将1~10的平方添加到列表中,平方数列表print(squares)

# 输出[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  • 对数字列表执行简单的统计计算
digits = list(range(0,10))min(digits)    # 找出列表最小值max(digits)    # 找出列表最大值sum(digits)    # 计算数字列表的总和
  • 列表解析
squares = [value**2 for value in range(1,11)]    # 平方数列表,注意这里的for语句末尾没有冒号

(三)使用列表的一部分

  • 切片
fruits = ['apple', 'banana', 'orange', 'watermelon']print(fruits[0:3])    # 打印列表索引0、1、2的元素

# 输出也为一个列表['apple', 'banana', 'orange']
print(fruits[:3])    # 没有指定第一个元素,自动从列表开头开始print(fruits[2:])    # 打印索引2到列表末尾的所有元素# 使用负数索引可以输出列表末尾的任何切片print(fruits[-3:])    # 此处打印列表末尾三个元素
  • 遍历切片
  • 复制列表
# 可再创建一个包含整个列表的切片fruits[:]    # 同时省略起始索引和终止索引

(四)元组

  • 列表适合用于存储在程序运行期间可能变化的数据集,列表是可以修改的。
  • 定义元组
    • 元组是不可变的列表,其中元素是不可修改的。
    • 使用圆括号;可以使用索引访问元组元素
digits = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)print(digits[0])
    • 不能给元组的元素赋值
  • 遍历元组中的所有值
digits = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)for digit in digits:    print(digit)          # 使用for循环
  • 修改元组变量,即重新定义一个元组赋给原来的变量
digits = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)digits = (1, 2, 3, 4)

(五)设置代码格式

  • Python Enhancement Proposal 
  • 缩进,PEP 8建议每级缩进都使用四个空格(制表符可以设置为是四个空格)
  • 行长,建议每行不超过80字符;PEP 8建议注释的行长都不超过72字符。
  • 空行

四、if语句

  • 条件测试(根据条件测试的值为True或Flase来决定是否执行if语句中的代码)
#检查是否相等(==)>>>age = 22>>>age == 22True #检查是否不相等(!=)>>>age != 22False #比较数字(<,>,>=,<=)>>>20 > 5True>>>20 <= 5False #检查多个条件(and,or)>>>20 > 5 and 20 < 6False>>>20 > 5 or 20 < 6True #检查特定值是否包含在列表中(in)>>>numbers = [1, 2, 3]>>>1 in numbersTrue #检查特定值是否不包含在列表中(not in)>>>2 not in numbersFalse #布尔表达式,通常用于记录条件,为跟踪程序状态或条件提供高效了一种方式game_active = Truecan_edit = False
  • if语句
    • 简单的if语句:一个测试和一个操作
if conditional_test:    do something
    • if-else语句:能够指定条件测试未通过时要执行的操作
if conditional_test:    do somethingelse:    do something
    • if-elif-else结构
if conditional_test1:    do somethingelif conditional_test2:    do somethingelse:    do something
    • 使用多个elif代码块(仅适合用于只有一个条件满足的情况)
    • 省略else代码块
    • 测试多个条件
if conditional_test1:    do somethingif conditional_test2:    do something
  • 使用if语句处理列表
    • 检查特殊元素
digits = [1, 2, 3]for digit in digits:    if digit == 1:        print(digit)    else:        print(1)
    • 确定列表不是空的
digits = []if digits:               # 当列表为空时返回False    for digit in digits:        print(digit)else:    print("There is nothing to print.")
    • 使用多个列表
  • 设置if语句的格式(比如在==、>=、<=等比较运算符两边添加一个空格)

五、字典

  • 定义字典
    • 字典是一系列键-值对,使用花括号{}
    • 键和值之间用冒号分隔,键-值对之间用逗号分隔
digits = {
'one': 1, 'two': 2, 'three': 3}print(digits['one'])
  • 使用字典
    • 访问字典中的值
    • 添加键-值对(字典是一种动态结构)
digits['four'] = 4digits['five'] = 5print(digits)

# 输出新增了两个键-值对digits = {
'one': 1, 'two': 2, 'three': 3, 'five': 5, 'four': 4} # 键-值对的排列顺序与添加顺序不同
      • 先创建一个空字典,再往空字典里添加键-值对,以这种方式创建一个字典
    • 修改字典中的值
digits['four'] = ‘四’digits['five'] = 5print(digits)

# 输出digits = {
'one': 1, 'two': 2, 'three': 3, 'five': 5, 'four': ‘四’}
    • 删除键-值对
digits = {
'one': 1, 'two': 2, 'three': 3, 'five': 5, 'four': 4}del digits['five'] # 永久性删除,使用del语句时必须指定字典名和要删除的键print(digits)

# 输出digits = {
'one': 1, 'two': 2, 'three': 3, 'four': 4}
    • 由类似对象组成的字典的格式(较大的字典)
# 在最后一个键-值对后面添加上逗号,可以为以后在下一行添加键-值对做好准备digits = {    'one': 1,              'two': 2,     'three': 3,     'four': 4,       }
  • 遍历字典
    • 遍历所有的键-值对
for key, value in digits.items():    # 包含字典名和方法items()    print(key + '--->' + value)# for k, v in digits.items()  使用简单的变量名# 输出:键-值对返回的顺序也与存储顺序不同'one'--->1'three'--->3'two'--->2'four'--->4
    • 遍历字典中所有的键
for k in digits.keys():     # 使用方法keys()返回一个包含字典中所有键对的列表    print(k)# for k in digits  也有相同的输出,但是不方便理解
    • 按顺序遍历字典中的所有键
for k in sorted(digits.keys()):       # 调用函数sorted()再遍历前先进行排序    print(k)
    • 遍历字典中的所有值
for v in digits.values():     # 使用方法values()返回一个包含字典中所有值的列表    print(v)# 这种做法提取了字典中的所有值,没有考虑重复,如果要剔除重复项,可以使用集合(set)for v in set(digits.values()):    # 使用函数set()返回一个不重复的列表    print(v)
  • 嵌套(将一系列字典存储在列表中或将列表作为值存储在字典中)
    • 字典列表
# 创建一个用于存储奇数和偶数的空列表numbers = []# 创建奇数列表和偶数列表odds = {
'one': 1, 'three': 3, 'five': 5}evens = {
'two': 2, 'four': 4, 'six': 6}numbers.append(odds)numbers.append(evens)for number in numbers: print(number)print(len(numbers))

# 输出{
'one': 1, 'three': 3, 'five': 5}{
'two': 2, 'four': 4, 'six': 6}2
    • 在字典中存储列表
numbers = {    1: ['one', '一'],    2: ['two', '二'],    3: ['three', '三'],    4: ['four', '四'],}for k, v in numbers.items():    print(k + '--->' + v)
    • 在字典中存储字典
numbers = {    'odd': {        1: 'one',        3: 'three',        5: 'five',        },    'even': {        2: 'two',        4: 'four',        6: 'six',        },}

 

 

 

 

 

转载于:https://www.cnblogs.com/mayyzym/p/10301608.html

你可能感兴趣的文章
java 线程
查看>>
MySql 时间函数
查看>>
解决php收邮件乱码问题
查看>>
linux shell中'',""和``的区别
查看>>
OceanBase数据库实践入门——手动搭建OceanBase集群
查看>>
WPF学习:3.Border & Brush
查看>>
Docker(二):微服务教程
查看>>
关于JAVA项目报表选型过程
查看>>
javascript
查看>>
Spring_MVC
查看>>
Java统计文件夹中文件总行数
查看>>
python之基本数据类型及深浅拷贝
查看>>
将bootstrap弹出框的点击弹出改为鼠标移入弹出
查看>>
SKF密码设备研究
查看>>
数据对象映射模式(通过工厂模式和注册树模式)v2
查看>>
4939 欧拉函数[一中数论随堂练]
查看>>
MySQL笔记(一)
查看>>
spring boot 包jar运行
查看>>
通过VMWare安装Linux(Ubuntu) 虚拟机在Window10系统和问题解决方案
查看>>
18年秋季学习总结
查看>>