Python基础语法入门篇(二)

1. 注释

在我们工作编码的过程中,如果一段代码的逻辑比较复杂,不是特别容易理解,可以适当的添加注释,以辅助自己 或者其他编码人员解读代码。

注释是给程序员看的,为了让程序员方便阅读代码,解释器会忽略注释。使用自己熟悉的语言,适当的对代码进行注释说明是一种良好的编码习惯(不写注释小心扣工资)。

1.1 单行注释

以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用。

# 输出hello world
print("hello world")# 输出hello world

Shift + 3,或者Ctrl + ? 都可以生成#号

注释一般在代码的上方进行编写,尽量不要跟在代码的后边。保持良好的编码习惯

1.2 多行注释

以 ‘’’ 开始,并以 ‘’’ 结束,我们称之为多行注释。


'''
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 佛祖保佑 永无BUG 佛曰: 写字楼里写字间,写字间里程序员; 程序人员写程序,又拿程序换酒钱。 酒醒只在网上坐,酒醉还来网下眠; 酒醉酒醒日复日,网上网下年复年。 但愿老死电脑间,不愿鞠躬老板前; 奔驰宝马贵者趣,公交自行程序员。 别人笑我忒疯癫,我笑自己命太贱; 不见满街漂亮妹,哪个归得程序员?
'''

2.变量以及数据类型

2.1 变量的定义

对于重复使用,并且经常需要修改的数据,可以定义为变量,来提高编程效率。

定义变量的语法为: 变量名 = 变量值 。(这里的 = 作用是赋值。)

定义变量后可以使用变量名来访问变量值。

# 定义一个变量表示这个字符串。如果需要修改内容,只需要修改变量对应的值即可
# 注意,变量名不需要使用引号包裹
weather = "今天天气真好"
print(weather)
print(weather)
print(weather)

说明:

1)变量即是可以变化的量,可以随时进行修改。

2)程序就是用来处理数据的,而变量就是用来存储数据的。

2.2 变量的类型

Python 里为了应对不同的业务需求,也把数据分为不同的类型。

重点关注:int、float、String、List

python中没有double类型,也没有char 字符类型

Tuple:和List类似,用一个数据代表很多数据的集合

Dictionary:和现实中字典功能类似

# int
money = 100
print(100)
# float
price = 99.9
print(price)
# boolean
# 变量要见名识意,不要用中文拼音,会被人看不起
# 男 True,女 False
sex = True
print(sex)
# String
# 字符串使用单引号或双引号都可以,但是必须成对出现
str = 'hello '
str2 = 'world'
print(str + str2)
# 单引号和双引号的嵌套
str3 = '"哈哈"'
str4 = "'哈哈'"
print(str3)
print(str4)
# 单引号和双引号会就近匹配,相同的不可以嵌套
# str5 = ""嘿嘿""  错误用法
# list
name_list = ['张飞', '关羽']
print(name_list)
# 获取list中下标为0的字符串,下标从0开始计算:0、1、2、3....
print(name_list[0])
# tuple
age_tuple = (18, 19, 20)
print(age_tuple)
# dictionary 字典
person = {'name': '张三', 'age': 18}
print(person)

2.3 查看数据类型

在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要咱们开发者主动的 去说明它的类型,系统会自动辨别。也就是说在使用的时候 "变量没有类型,数据才有类型"。

str5 = "hello"
print(type(str5))
#<class 'str'>
#str是string的一个缩写

如果临时想要查看一个变量存储的数据类型,可以使用 type(变量的名字),来查看变量存储的数据类型。

3.标识符和关键字

计算机编程语言中,标识符(或者叫变量)是用户编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。

  1. 标识符由字母、下划线和数字组成($等符号都不可以),且不能以数字开头

  2. 严格区分大小写。

  3. 不能使用关键字

3.1 命名规范

  • 标识符命名要做到顾名思义。

起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性) 比如: 名字 就定义为 name , 定义学生用 student

# 正确示例
name = "张三"
age = 18
#错误命名
a = "张三"
b = 18
  • 遵守一定的命名规范。

    • 驼峰命名法,又分为大驼峰命名法和小驼峰命名法。

1)小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写, 例如:myName、aDog

2)大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName.

3)还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf.

​ Python的命令规则遵循PEP8标准

3.2 关键字

  • 关键字的概念

一些具有特殊功能的标识符,这就是所谓的关键字。

关键字,已经被python官方使用了,所以不允许开发者自己定义和关键字相同名字的标识符。

  • 关键字
False None True and as assert break class continue def del elif else except
finally for from global if import in is lambda nonlocal not or pass raise
return try while with yield

4. 类型转换

函数 说明 说明
int(x) 将x转换为一个整数
float(x) 将x转换为一个浮点数
str(x) 将对象 x 转换为字符串
bool(x) 将对象x转换成为布尔值

转换成为整数

print(int("123")) # 123 将字符串转换成为整数
print(int(123.78)) # 123 将浮点数转换成为整数 print(int(True)) # 1 布尔值True转换成为整数是 1
print(int(False)) # 0 布尔值False转换成为整数是 0 # 以下两种情况将会转换失败
'''
123.456 和 12ab 字符串,都包含非法字符,不能被转换成为整数,会报错
print(int("123.456"))
print(int("12ab"))
'''

转换成为浮点数

f1 = float("12.34")
print(f1) # 12.34
print(type(f1)) # float 将字符串的 "12.34" 转换成为浮点数 12.34 f2 = float(23)
print(f2) # 23.0
print(type(f2)) # float 将整数转换成为了浮点数

转换成为字符串

str1 = str(45)
str2 = str(34.56)
str3 = str(True)  #True
print(type(str1),type(str2),type(str3))

转换成为布尔值

print(bool(1)) #True,非0的整数都是True
print(bool(' ')) #True,空格也是True
print(bool(0.1)) #True,非0的浮点数都是True# 以下情况都是False
print(bool(0)) #False
print(bool(0.0)) #False
print(bool('')) #False,没有内容的字符串都是False
print(bool("")) #Falseprint(bool({})) #False,只要字典中有数据,强制转换为bool,就返回True
print(bool([])) #False,只要列表中有数据,强制转换为bool,就返回True
print(bool(())) #False只要元组中有数据,强制转换为bool,就返回Truetuple1 = (0)
print(bool(tuple1)) #False
tuple2 = (0, 0)
print(bool(tuple)) #True

5. 运算符

5.1 算数运算符

以a=10 ,b=20为例进行计算

运算符 描述 实例
+ 两个对象相加 a + b 输出结果 30
- 得到负数或是一个数减去另一个数 a - b 输出结果 -10
* 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ b / a 输出结果 2
// 取整除 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
% 取余 返回除法的余数 b % a 输出结果 0
** 指数(幂) a**b 为10的20次方
() 小括号 提高运算优先级,比如: (1+2) * 3

注意:混合运算时,优先级顺序为: ** 高于 * / % // 高于 + - ,为了避免歧义,建议使用 () 来处理运

算符优先级。 并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。

>>> 10 + 5.5 * 2
21.0
>>> (10 + 5.5) * 2
31.0

5.2 算数运算符在字符串里的使用

注意:在python中, + 两端都是字符串才可以进行拼接字符串,不是字符串类型的数据可以通过str()强转为字符串 ,再进行拼接

字符串的乘法,是将字符串重复多少次

print('11' + '22')  #1122
print(' hello world' * 3) # hello world hello world hello world

5.3 赋值运算符

运算符 描述 实例
= 赋值运算符 把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7
# 同时为多个变量赋值(使用等号连接)
>>> a = b = 4
>>> a
4
>>> b
4>>> # 多个变量赋值(使用逗号分隔)
>>> num1, f1, str1 = 100, 3.14, "hello"
>>> num1
100
>>> f1
3.14
>>> str1
"hello"

5.4 复合赋值运算符

运算符 **描述 **实例
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
%= 取模赋值运算符 (取余,模余) c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
# 示例:+=
>>> a = 100
>>> a += 1 # 相当于执行 a = a + 1
>>> a
101 # 示例:*=
>>> a = 100
>>> a *= 2 # 相当于执行 a = a * 2
>>> a
200 # 示例:*=,运算时,符号右侧的表达式先计算出结果,再与左边变量的值运算
>>> a = 100
>>> a *= 1 + 2 # 相当于执行 a = a * (1+2)
>>> a
300

5.5 比较运算符

以下假设变量a为10,变量b为20:

运算符 描述 示例
== 等于:比较对象是否相等(也叫恒等) (a == b) 返回 False
!= 不等于:比较两个对象是否不相等(python2中 <> 代表不等于) (a != b) 返回True
> 大于:返回x是否大于y (a > b) 返回False
>= 大于等于:返回x是否大于等于y (a >= b) 返回False
< 小于:返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True与False等价 (a < b) 返回True
<= 小于等于:返回x是否小于等于y (a <= b) 返回True

5.6 逻辑运算符

运算 含义 逻辑表达式 描述 实例
and x and y 只要有一个运算数是False,结果就是False; 只有所有的运算数都为True时,结果才是True 做取值运算时,取第一个为False的值,如果所有的值 都为True,取最后一个值 True and True and False–> 结果为False True and True and True–> 结果为True
or x or y 只要有一个运算数是True,结果就是True; 只有所有的运算数都为False时,结果才是False 做取值运算时,取第一个为True的值,如果所有的值都 为False,取最后一个值 False or False or True–>结 果为True False or False or False–>结 果为False
not 非、取反 not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not True --> False

性能提升

面试题:一下代码的输出结果是什么,为什么会有这样的输出。

a = 34
a > 10 and print('hello world') #输出
a < 10 and print('hello world') #不输出a >10 or print('你好世界')  #不输出
a <10 or print('你好世界')  #输出

思考:

  1. 逻辑运算的短路问题

    • 当and的前边是False的情况下,那么后边的代码不会执行
    • or:只要有一方为True,那么结果就是True
  2. 逻辑与运算和逻辑或运算取值时为什么是那种规则。
    and和or有短路效果

6. 输入输出

6.1 输出

age = 10
print("我今年%d岁" % age)name = "张三"
print("我的姓名是%s, 年龄是%d" % (name, age))

6.2 输入

在Python中,获取键盘输入的数据的方法是采用 input 函数

password = input("请输入密码:")
print('您刚刚输入的密码是:%s' % password)

注意:

  • input()的小括号中放入的是提示信息,用来在获取数据之前给用户的一个简单提示

  • input()在从键盘获取了数据以后,会存放到等号右边的变量中

  • input()会把用户输入的任何值都作为字符串来对待

7.流程控制语句

7.1 if判断语句

if语句是用来进行判断的,其使用格式如下:

if 要判断的条件: 条件成立时,要做的事情#示例
if age >= 18: print("我已经成年了")

小总结:

  • if判断语句的作用:就是当满足一定 条件时才会执行代码块语句,否则就不执行代码块语句。

  • 注意:if下一行代码的缩进为一个tab键,或者4个空格。PyCharm可以按Ctrl + Alt + L 直接格式化代码

7.2 if else

if-else的使用格式

if 条件: 满足条件时的操作
else:不满足条件时的操作
age = 18
if age >= 18: print("你成年了")
else:print("你是未成年人")
age = int(input("请输入年龄:"))
if age >= 18:print("你成年了")
else:print("未成年人")

7.3 elif

elif的功能

if xxx1: 事情1
elif xxx2: 事情2
elif xxx3: 事情3

说明:

  • 当xxx1满足时,执行事情1,然后整个if结束

  • 当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束

  • 当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束

示例:

score = int(input("请输入分数"))
if score >= 90:print("优秀")
elif score >= 80:print("良好")
elif score > 60:print("及格")
else:print("不及格")

7.4 for

在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。

fo循环的格式

for 临时变量 in 列表或者字符串等可迭代对象: 循环满足条件时执行的代码

for循环的使用

7.4.1 遍历字符串:

for s in "hello":print(s)

7.4.2 range

range 可以生成数字供 for 循环遍历,它可以传递三个参数,分别表示 起始、结束和步长。

  • 打印数字
for i in range(5): print(i)


打印九九乘法表

def f1(a):for i in range(1, a+1):s = ''for j in range(1, i+1):s += ('%d*%d=%d   ' % (j, i, i*j))print(s)   f1(9);

结果:

打印菱形

def f1(a):# 获取中位数,即取整除z = a // 2# 根据参数a循环for i in range(a):# 空格的数量:中位数-当前循环数b = z - i# 如果b<0,则空格数等于绝对值if b < 0:b = 0 - bk = ' '# 计算空格数量k = b * kc = '*'# 参数a减去两边空格的数量就是*号的数量c = (a - b * 2) * cprint(k + c + k)f1(17)

结果:

7.4.3 循环列表

a_list = ['张三', '李四', '王五']
for i in a_list:print(i)

Python基础语法入门篇(二)

Python基础语法入门篇(一)相关推荐

  1. 零基础学C++——黑马程序员课程笔记(C++基础语法入门篇)

    封面来自互联网侵删 视频地址:点击访问 (我这里开发工具选用VSstudio) 此笔记有三个系列: C++基础语法入门篇 C++核心编程篇 点击查看 C++提高编程篇 文章目录 C++初识 变量 常量 ...

  2. Python基础语法入门

    14天学习训练营导师课程: 李宁<Python Pygame游戏开发入门与实战> 李宁<计算机视觉OpenCV Python项目实战>1 李宁<计算机视觉OpenCV P ...

  3. python基础语法入门大全_python 基础语法——快速入门

    今天来讲一些老生常谈,但凡学习一门语言都逃不过基本的语法,我们也来叨逼叨逼.不过不想事无巨细地讲,因为没有意义,估计讲完了大家都忘记了,我们挑钟爱你,其他的可以自学. 变量,学习一门语言第一件事可能是 ...

  4. 三、python基础语法进阶篇(黑马程序猿-python学习记录)

    黑马程序猿的python学习视频:https://www.bilibili.com/video/BV1qW4y1a7fU/ ====================================== ...

  5. python开发基本流程_第一阶段:Python开发基础 day06  Python基础语法入门--流程控制(二)...

    一.上节课内容回顾 三种格式化输出 占位符 format格式化 f-String格式化 基本运算符 算术运算符 比较运算符 逻辑运算符 赋值运算符 身份运算符 运算符的优先级 流程控制之if判断 单分 ...

  6. 【Web】JavaScript——基础语法入门篇

  7. python turtle基本语法_Python 基础语法-turtle篇

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  8. python基础语法大全turtle_Python 基础语法-turtle篇-Go语言中文社区

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  9. Python基础语法day02字符串详解和列表

    今天是python基础语法入门第二天,大概总共会有四天左右.四天后就是对于python的numpy库的详细文章.那话不多说,我们开始. 目录 字符串详解 字符串独有功能 检测头尾字符 判断输入结果是否 ...

最新文章

  1. java 8代码 改 java7_Window安装JDK7和JDK8,并一键切换
  2. P2801 教主的魔法(分块入门)
  3. python实现http下载文件-Python实现HTTP协议下的文件下载方法总结
  4. iOS 学习记录----动画
  5. JavaScript学习杂记--对象和数组
  6. 这些贷款冷知识你知道多少?
  7. java切面1.6需要的包_Java技术 AspectJ
  8. extract($_POST[])
  9. win10英文系统一键装机教程
  10. Atitit 字符串模板与 字符串插值 目录 1.1. 字符串插值是将字符串中的占位符替换为局域变量的过程 1 1.2. 模板字面量 是允许嵌入表达式的字符串字面量 1 1.3. 格式化字符串[编辑
  11. 华为荣耀黑科技,打造震撼AI智能机
  12. excel两个表格数据对比_表格技巧—Excel表格两列数据合并
  13. 仿QQ计步器效果的实现
  14. 查看linux设备Ran的大小,linux – 来自/ dev / zero和/ dev / urandom的不同文件大小
  15. 利用SimpleTagSupport创建定制标签
  16. moectf Amazing_eval
  17. 哪一本科普书籍,会改变你的认知?
  18. 数据库中 date 类型 实体类对应可以是 String 类型
  19. 十三款著名跨平台游戏引擎(原文翻译部分转自游侠网)
  20. opencv python抓取屏幕数字

热门文章

  1. 高速下载Arxiv论文的解决方案
  2. oracle 行列转换函数
  3. 74LS85 比较器 【数字电路】
  4. 人、狼、羊、白菜过河问题(广度搜索)
  5. c语言屏幕输出函数相关题,C语言上机考试题目
  6. 学习java就业前景与工资待遇究竟怎么样?
  7. Android中关于ComponentName的使用
  8. android 语音适配,Android多语言适配繁体中文
  9. dubbo源码分析总结
  10. 可以免费自学编程的12个网站,祝你达巅峰