1. 变量

  • 变量是什么
  • 变量有哪些类型
  • 如何创建变量
  • 命名规则与关键字

1-1. 变量是什么?

  • 初识:变量就是一个容器,装数据用的。(例如:a = 10,这就是创建了一个变量,变量名为a,值是10;也就是说,变量a ,装的数据是10)
  • 进阶理解:代码未执行时,仅仅就是一句代码,或者叫几个字符,什么用也没有。代码执行时,a = 10,创建这个变量就是在内存开辟一块内存空间,存储了10,然后这个内存,指向变量名a。

不要纠结于概念,会用就行了。

1-2. 变量有哪些类型

  • 为什么有不同的数据类型?:需要处理不同的数据场景,看到这些类型,自然就能明白
  • Python常用变量类型有:
    • 字符串(String)
    • 数字(Numbers)【整数(int)】【浮点数(float)】
    • 列表(List)
    • 元祖(Tuple)
    • 字典(Dictionary)
    • 集合(Set)
    • 布尔(Bool)

先了解一下,Python有哪些数据类型,后面会详细聊,每种数据类型的各种骚操作。

1-3. 注释

  • 什么是注释:就是对代码进行说明的(不会被执行,仅仅是解释给我们看,这段代码是什么意思)
  • 为什么需要注释?:代码量一旦大了之后,不加注释的代码,看起来很费劲。
  • 注释怎么写,很简单
  1. # 这是一个单行注释。 #后面的任何内容都不会被解释器解释了,只能当前行,下一行就不算了
  2. '''
  3. 这是一个多行注释,可以换行
  4. 写几行注释都行
  5. 用【"""这种三引号"""】也可以作为多行注释
  6. '''
  7. # 快捷键,ctr + / ; mac版本,command + /

1-4. 创建变量

  • 创建数字

    1. num1 = 10 # (整数型)这就是创建了一个变量,无需申明数据类型
    2. num2 = 1.234 # (浮点型)
  • 创建字符串

    1. str1 = '第一个hello'
    2. str2 = "第二个hello"
    3. str3 = '''第三个world'''
    4. str4 = """第四个world"""
    5. 思考:为什么支持四种方式,一种不就可以了吗,解决了问题?
  • 创建列表

    1. list1 = ['张三丰', '宋远桥、俞莲舟、俞岱岩、张松溪、张翠山、殷梨亭、莫声谷', '太极拳', '太极剑']
  • 创建元祖

    1. tup1 = ('李连杰独孤九剑','荡剑式','离剑式','破剑式','撩剑式','落剑式','截剑式、挫剑式、平剑式和浪剑式')
    2. tup2 = ('金庸独孤九剑','总诀式、破剑式、破刀式、破枪式、破鞭式、破索式、破掌式、破箭式、破气式')
  • 创建字典

    1. dict1 = {'乔峰':'降龙十八掌', '段誉':['六脉神剑','凌波微步', '北冥神功'], '虚竹':'北冥神功,天山折梅手,小无相功,天山六阳掌'}
  • 创建集合 ```python set1 = {‘hello’, ‘hello’, ‘world’, ‘world’}

print(set1) {‘hello’, ‘world’} # 不同于列表的是,去重

  1. <a name="1z4Mj"></a>
  2. #### 1-5. 标识符
  3. - **什么是标识符?**
  4. 我们在开发过程中自己定义的名称,如变量名,函数名等等
  5. - **命名规则**
  6. - 标识符由字母、下划线和数字组成,且数字不能开头
  7. - python中的标识符是区分大小写的
  8. - 见名知意(方便自己和别人阅读)(例如名字,定义为name)
  9. - 驼峰命名法
  10. - 小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog<br />
  11. - 大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName<br />
  12. - 还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf
  13. - 在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。但日常工作中没人用中文命名的,玩玩就好。
  14. - **关键字**
  15. - 是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符,例如print
  16. - 如何查询有哪些关键字。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
  17. ```python
  18. >>> import keyword
  19. >>> keyword.kwlist
  20. ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def',
  21. 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import',
  22. 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try',
  23. 'while', 'with', 'yield']

2. 输出

  • 什么是输出?
  • 有什么用?
  • 有哪些输出方式

2-1. 是什么:

  1. print(''hello world")

这就是输出:“hello world”

2-2. 有什么用:

开发中,将我们想要知道的数据打印在控制台,方便调试。

2-3. 有哪些输出方式:

  • 最简单输出:print()
  • 格式化输出:用占位符的形式,动态的输出数据
  1. # 格式化输出
  2. name = '段誉'
  3. age = 19
  4. KongFu = ['北冥神功', '凌波微步', '六脉神剑']
  5. value = 9.5
  6. print(name, age)
  7. print('我的名字叫做 %s, 我今年 %d 岁了,我的功夫是%s'%(name,age,KongFu))
  8. '''
  9. 输出结果为:
  10. 段誉 19
  11. 我的名字叫做 段誉, 我今年 19 岁了,我的功夫是['北冥神功', '凌波微步', '六脉神剑']
  12. '''
  13. # 为什么进行格式化输出,就是我们的数据可以变动的,是动态的.
  14. # 有动态,就格式化
  15. # 常用的格式化占位符
  16. # 1. %s 格式化输出字符串
  17. # 2. %d 格式化输出整数
  18. # 3. %f 格式化输出浮点数(默认保留六位小数)
  19. print('我的名字叫%s ; 今年%d岁 ; 我的功夫是%s; 功夫指数:%f'%(name, age, KongFu, value))
  20. # 我的名字叫段誉 ; 今年19岁 ; 我的功夫是['北冥神功', '凌波微步', '六脉神剑']; 功夫指数:9.500000
  21. # %f默认保留6位小数,如果我想保留2位怎么办??? %.2f
  22. print('我叫%s,我今年%d岁,我的功夫指数是%.2f'%(name, age, value))
  23. # 我叫段誉,我今年19岁,我的功夫指数是9.50
  24. # %04d表示,数据如果不满4位,则在前面补0
  25. print('我叫%s, 我今年%04d岁,我的功夫指数是%.2f'%(name, age, value))
  26. # 我叫段誉, 我今年0019岁,我的功夫指数是9.50
  27. # 显示百分比,%%,因为格式化占位符,作为符号用是,两个表示一个
  28. print('我叫%s, 我今年%04d岁,我的功夫指数是%.2f%%'%(name, age, value))
  29. # 我叫段誉, 我今年0019岁,我的功夫指数是9.50%
  • 拓展一些输出的小操作
  1. # 1. print支持多个变量的输出,默认数据之间是以空格分隔显示的
  2. name = 'xiaoming'
  3. age = 15
  4. print(name, age)
  5. # xiaoming 15
  6. # 2. sep参数的使用,多个变量输出分隔符设置
  7. print(name, age, sep=' & ')
  8. # xiaoming & 15
  9. # 3. \n 换行转义符,多个变量的输出,换行输出。
  10. str1 = 'asdgh\n123asdgh'
  11. print(str1)
  12. '''
  13. asdgh
  14. 123asdgh
  15. '''
  16. print(name, age, sep='\n')
  17. '''
  18. xiaoming
  19. 15
  20. '''
  21. # 4. end参数,在输出的最后添加数据。默认是end = '\n',即默认换行
  22. print(name, age, end='!!!!!')
  23. print(name, end=' % ')
  24. print(age)
  25. # xiaoming 15!!!!!xiaoming % 15

3. 输入

输入:就是接收用户在控制台输入的数据
Python2中,有raw_input()和input()之分。但Python2已经停止维护了。知道有过那么一回事就行了
Python3中,只有input()

  • input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示
  • input()在从键盘获取了数据以后,会存放到等号右边的变量中
  • input()会把用户输入的任何值都作为字符串来对待
  1. name = input('我的名字:')
  2. age1 = input('我的年龄:')
  3. age2 = int(input('我的年龄:')) # ,
  4. KongFu = input('我的绝学:')
  5. print('我叫%s, 我今年%d岁,我的绝学是%s'%(name, age2, KongFu))
  6. print(type(age1)) # <class 'str'> input()会把用户输入的任何值都作为字符串来对待
  7. print(type(age2)) # <class 'int'> int()将字符串类型转化为int类型。所以格式化输出时可以用%d.
  8. 执行结果
  9. 我的名字:张三丰
  10. 我的年龄:100
  11. 我的年龄:100
  12. 我的绝学:太极拳
  13. 我叫张三丰, 我今年100岁,我的绝学是太极拳
  14. <class 'str'>
  15. <class 'int'>


4. 综合演练

写一个程序,让用户可以自己创建一个门派,输出结果格式如下:

  1. ==========我的江湖==========
  2. 姓名: 张三丰
  3. 年龄: 100
  4. 手机号:185xxxxxx
  5. 我的门派:武当
  6. 我的绝学:太极拳 && 太极剑
  7. ===========================

应用:创建变量(注意命名)、输入、格式化输出

  1. name = input('姓名:') # 创建变量,且以输入的形式
  2. age = int(input('年龄'))
  3. iphone = int(input('手机号:')) # 讲字符串类型,转化成数字类型
  4. MenPai = input('我的门派:') # 大驼峰命名法
  5. KongFu1 = input('我的第一门功夫是:')
  6. KongFu2 = input('我的第二门功夫是:')
  7. print('==========我的江湖==========')
  8. print('姓名:%s'%name) # 格式化输出
  9. print('年龄:%d'%age)
  10. print('手机号:%d'%iphone)
  11. print('我的门派:%s'%MenPai)
  12. print('我的绝学:%s && %s'%(KongFu1,KongFu2))
  13. print('===========================')
  14. --------
  15. 执行结果
  16. 以下为输入
  17. 姓名:岳不群
  18. 年龄50
  19. 手机号:135357
  20. 我的门派:华山派
  21. 我的第一门功夫是:紫霞神功
  22. 我的第二门功夫是:辟邪剑法
  23. 以下为输出
  24. ==========我的江湖==========
  25. 姓名:岳不群
  26. 年龄:50
  27. 手机号:135357
  28. 我的门派:华山派
  29. 我的绝学:紫霞神功 && 辟邪剑法
  30. ===========================