Python入门基础(一)

编程入门 行业动态 更新时间:2024-10-07 06:42:30

Python<a href=https://www.elefans.com/category/jswz/34/1770026.html style=入门基础(一)"/>

Python入门基础(一)

Python入门基础

1 Python基础知识

1.1 编程语言与Python

1.2 注释

  1. 单行注释
    #开头,#右边的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用
# 我是注释,可以在里写一些功能说明之类的哦
print('hello world')
  1. 多行注释
'''我是多行注释,可以写很多很多行的功能说明
'''

1.3 变量以及类型

1.3.1 变量的定义
num1 = 100 #num1就是一个变量,就好一个小菜篮子num2 = 87  #num2也是一个变量result = num1 + num2 #把num1和num2这两个"菜篮子"中的数据进行累加,然后放到 result变量中
1.3.2 变量类型

  • 怎样知道一个变量的类型呢?
    1. 在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要咱们开发者主动的去说明它的类型,系统会自动辨别
    2. 可以使用type(变量的名字),来查看变量的类型

1.4 标志符和关键字

1.4.1 标志符

开发人员在程序中自定义的一些符号和名称。标识符是自己定义的,如变量名 、函数名等

1.4.2 标识符的规则
  • 标识符由字母、下划线和数字组成,且数字不能开头
1.4.3 命名规则
  • 小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog

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

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

Python的命令规则遵循PEP8标准,这个在后面会慢慢讲到。

1.4.4 关键字

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

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

查看关键字:

and 、 as、 assert 、 break 、 class、 continue 、 def、 del、
elif 、 else 、 except 、 exec、 finally 、 for 、 from 、 global、
if 、 in 、 import、 is、 lambda、 not 、 or 、 pass、
print 、 raise、 return 、 try 、 while、 with 、 yield。
可以在Python Shell通过以下命令进行查看当前系统中python的关键字

import keyword
keyword.kwlist

1.5 输出

# 打印提示
print('hello world')
print('萨瓦迪卡---泰语,你好的意思')
1.5.1 格式化输出
1.5.1.1 格式化的目的
pirnt("我今年10岁")
pirnt("我今年11岁")
pirnt("我今年12岁")...
#上面的太繁琐了,用 格式化输出 简化过程
1.5.1.2 常用的格式符号
格式符号转换
%c字符
%s字符串
%d有符号十进制整数
%u无符号十进制整数
%o八进制整数
%x十六进制整数(小写字母0x)
%X十六进制整数(大写字母0X)
%f浮点数
%e科学计数法(小写'e')
%E科学计数法(大写“E”)
%g%f和%e 的简写
%G%f和%E的简写

1.6 输入

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

注意:

  • input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示;
  • input()在从键盘获取了数据以后,会存放到等号右边的变量中;
  • input()会把用户输入的任何值都作为字符串来对待。

1.7 运算符

1.7.1 算数运算符
运算符描述实例
+两个对象相加 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次方, 输出结果 100000000000000000000

注意:

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

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

1.7.2 赋值运算符
运算符描述实例
=赋值运算符把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7
# 单个变量赋值
>>> num = 10
>>> num
10# 多个变量赋值
>>> num1, num2, f1, str1 = 100, 200, 3.14, "hello"
>>> num1
100
>>> num2
200
>>> f1
3.14
>>> str1
"hello"
  • 复合赋值运算符
运算符描述实例
+=加法赋值运算符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

1.8 常见的数据类型转化

函数说明
int(x [,base ])将x转换为一个整数
float(x )将x转换为一个浮点数
complex(real [,imag ])创建一个复数,real为实部,imag为虚部
str(x )将对象 x 转换为字符串
repr(x )将对象 x 转换为表达式字符串
eval(str )用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s )将序列 s 转换为一个元组
list(s )将序列 s 转换为一个列表
chr(x )将一个整数转换为一个Unicode字符
ord(x )将一个字符转换为它的ASCII整数值
hex(x )将一个整数转换为一个十六进制字符串
oct(x )将一个整数转换为一个八进制字符串
bin(x )将一个整数转换为一个二进制字符串

代码展示

>>> # int(): 将数据转换为 int 类型
... 
>>> str1 = "10"
>>> # int() 默认按10进制转换后显示
... num1 = int(str1)
>>> 
>>> # int() 处理浮点数,只留下整数部分,舍弃小数部分(并不是四舍五入操作)
... num2 = int(3.74)
>>> print(num2)
3
>>> 
>>> """
... num1 = int(str1, 8) # 第二个参数为8,表示按8进制转换后显示,结果为 8
... num1 = int(str1, 16) # # 第二个参数为16,表示按16进制转换后显示,结果为 16
... #01 02 03 04 05 06 07 10
... #01 02 ... 0B 0C 0D 0E 0F 10
... print(num1)
... """
>>> 
>>> # float() 将数据转化为浮点数
... str2 = "3.14"
>>> f1 = float(str2)
>>> print(type(f1))
<class 'float'>
>>> 
>>> f2 = float(10)
>>> print(f2)
10.0
>>> 
>>> # complex() 创建复数: 第一个参数是复数的实部,第二个参数是复数的虚部
... c1 = 10 + 4j
>>> c2 = complex(10, 4)
>>> 
>>> print(c1)
(10+4j)
>>> print(c2) # 等同与c1
(10+4j)
>>> 
>>> # str() : 转换为 字符串类型
... num1 = 10
>>> f1 = 3.14
>>> 
>>> print(type(str(num1)))
<class 'str'>
>>> print(type(str(f1)))
<class 'str'>
>>> 
>>> # repr(): 转换为表达式字符串
... num1 = 10
>>> print(type(repr(num1)))
<class 'str'>
>>> 
>>> 
>>> # eval(): 将字符串形式的数据,转换为原本的类型
... str1 = "3.14"
>>> print(type(eval(str1)))
<class 'float'>
>>> 
>>> str2 = "[10, 20, 30]"
>>> l = eval(str2)
>>> print(type(l))
<class 'list'>
>>> 
>>> 
>>> # chr: 将一个整数转换为对应的 Unicode 字符
... s = chr(1065)
>>> print(s)
Щ
>>> 
>>> # ord :将一个字符转换为对应的字符编码数字
... n = ord("A")
>>> print(n)
65
>>> 
>>> # bin: 将一个整数转换为二进制
... print(bin(1024)) # 0b 开头表示二进制数
0b10000000000
>>> 
>>> # oct:将一个整数转换为八进制
... print(oct(1024)) # 0o 开头表示八进制数
0o2000
>>> 
>>> # hex: 将一个整数转换为十六进制
... print(hex(1024)) # 0x 开头表示十六进制
0x400
>>>

1.9 总结

2 判断语句与循环逻辑

2.1 if 判断句

age = 16print("------if判断开始------")if age >= 18:print("我已经成年了")print("------if判断结束------")

2.2 比较关系和条件运算符

2.2.1 比较运算符
运算符描述示例
==检查两个操作数的值是否相等,如果是则条件变为真。如a=3,b=3,则(a == b) 为 True
!=检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3,则(a != b) 为 True
>检查左操作数的值是否大于右操作数的值,如果是,则条件成立。如a=7,b=3,则(a > b) 为 True
<检查左操作数的值是否小于右操作数的值,如果是,则条件成立。如a=7,b=3,则(a < b) 为 False
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。如a=3,b=3,则(a >= b) 为 True
<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。如a=3,b=3,则(a <= b) 为 True

代码示例:

>>> ## 关系运算符
... 
>>> # == 等于:表示左右两个操作数是否相等,如果相等则整个表达式的值为 True;不相等则为False
... num1 = 15
>>> num2 = 20
>>> 
>>> print(num1 == num2)
False
>>> 
>>> # != 不等于
... print(num1 != num2)
True
>>> 
>>> # > 大于
... print(num1 > num2)
False
>>> 
>>> # < 小于
... print(num1 < num2)
True
>>> 
>>> # >= 大于等于: num1 大于 或者 等于 num2 ,条件都成立
... print(num1 >= num2)
False
>>> 
>>> # <= 小于等于: num1 小于 或者 等于 num2 ,条件都成立
... print(num1 <= num2)
True
>>> 
>>> if num1 >= num2:
...     print("条件成立!")
... 
>>>
2.2.2 逻辑运算符
运算符逻辑表达式描述实例
andx and y布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。True and False, 返回 False。
orx or y布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。False or True, 返回 True。
notnot x布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。not True 返回 False, not False 返回 True
>>> ## 逻辑运算符
... 
>>> # and : 左右表达式都为True,整个表达式结果才为 True
... if (1 == 1) and (10 > 3):
...     print("条件成立!")
... 
条件成立!>>> # or : 左右表达式有一个为True,整个表达式结果就为 True
... if (1 == 2) or (10 > 3):
...     print("条件成立!")
... 
条件成立!>>> # not:将右边表达式的逻辑结果取反,Ture变为False,False变为True
... if not (1 == 2):
...     print("条件成立!")
... 
条件成立!>>>

2.3 if-else

 if 条件:满足条件时要做的事情1满足条件时要做的事情2满足条件时要做的事情3...(省略)...else:不满足条件时要做的事情1不满足条件时要做的事情2不满足条件时要做的事情3...(省略)...

示例:
demo1

 chePiao = 1 # 用1代表有车票,0代表没有车票if chePiao == 1:print("有车票,可以上火车")print("终于可以见到Ta了,美滋滋~~~")else:print("没有车票,不能上车")print("亲爱的,那就下次见了")

结果1:有车票的情况

有车票,可以上火车
终于可以见到Ta了,美滋滋~~~

结果2:没有车票的情况

没有车票,不能上车
亲爱的,那就下次见了

2.4 if … else … else …

2.4.1 elif的功能

elif的使用格式如下:

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

说明:

  1. xxx1满足时,执行事情1,然后整个if结束
  2. xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
  3. xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束
    demo:
score = 77
if score>=90 and score<=100:print('本次考试,等级为A')
elif score>=80 and score<90:print('本次考试,等级为B')
elif score>=70 and score<80:print('本次考试,等级为C')
elif score>=60 and score<70:print('本次考试,等级为D')
elif score>=0 and score<60:print('本次考试,等级为E')

注意点:
可以和else一起使用

  if 性别为男性:输出男性的体重...elif 性别为女性:输出女性的体重...else:第三种性别的体重...

说明:

  • 当 “性别为男性” 满足时,执行 “输出男性的体重”的相关代码

  • 当 “性别为男性” 不满足时,如果 “性别为女性”满足,则执行 “输出女性的体重”的相关代码

  • 当 “性别为男性” 不满足,“性别为女性”也不满足,那么久默认执行else后面的代码,即 “第三种性别的体重”相关代码

  • elif必须和if一起使用,否则出错

  • else 一般用在最后,即所有条件都不满足时使用

2.4.2 if 实现三目运算操作

a if a > b else b

如果 a > b的条件成立,三目运算的结果是a,否则就是b

# 求a和b两个数字中的较大值.
a = 10
b = 20
# 使用三目运算符求较大值
max = a if a > b else b
print("较大值为:%d" % max)

2.5 if嵌套的格式

2.5.1 if 的嵌套
 if 条件1:满足条件1 做的事情1满足条件1 做的事情2if 条件2:满足条件2 做的事情1满足条件2 做的事情2

说明

  • 外层的if判断,也可以是if-else
  • 内层的if判断,也可以是if-else
  • 根据实际开发的情况,进行选择。
2.5.2 if嵌套的应用

demo

chepiao = 1     # 用1代表有车票,0代表没有车票
dao_lenght = 9     # 刀子的长度,单位为cmif chepiao == 1:print("有车票,可以进站")if dao_lenght < 10:print("通过安检")print("终于可以见到Ta了,美滋滋~~~")else:print("没有通过安检")print("刀子的长度超过规定,等待警察处理...")
else:print("没有车票,不能进站")print("亲爱的,那就下次见了")

结果1

chepiao = 1;dao_lenght = 9有车票,可以进站通过安检终于可以见到Ta了,美滋滋~~~

结果2:

chepiao = 1;dao_lenght = 20有车票,可以进站没有通过安检刀子的长度超过规定,等待警察处理...

结果3:

chepiao = 0;dao_lenght = 9没有车票,不能进站亲爱的,那就下次见了

结果4:

chepiao = 0;dao_lenght = 20没有车票,不能进站亲爱的,那就下次见了

2.6 猜拳游戏

⽬标:

  1. 强化 多个条件 的 逻辑运算

  2. 体会 import 导⼊模块(“⼯具包”)的使⽤
    需求:

  3. 从控制台输⼊要出的拳 —— ⽯头(1)/剪⼑(2)/布(3)

  4. 电脑 随机 出拳 —— 先假定电脑只会出⽯头,完成整体代码功能

  5. ⽐较胜负

参考代码:

import randomplayer = input('请输入:剪刀(0)  石头(1)  布(2):')player = int(player)# 产生随机整数:0、1、2 中的某一个
computer = random.randint(0,2)# 用来进行测试
#print('player=%d,computer=%d',(player,computer))if ((player == 0) and (computer == 2)) or ((player ==1) and (computer == 0)) or ((player == 2) and (computer == 1)):print('获胜,哈哈,你太厉害了')
elif player == computer:print('平局,要不再来一局')
else:print('输了,不要走,洗洗手接着来,决战到天亮')

随机数的处理

  • 在 Python 中,要使⽤随机数,⾸先需要导⼊ 随机数 的 模块 —— “⼯具包”
import random
  • 导⼊模块后,可以直接在 模块名称 后⾯敲⼀个 . 然后按 Tab 键,会提示该模块中包含的所有函数

  • random.randint(a, b) ,返回 [a, b] 之间的整数,包含 ab

  • 例如:

>>> import random
>>> random.randint(1,3)
3
>>> random.randint(1,3)
3
>>> random.randint(1,3)
2
>>> random.randint(1,3)
3
>>> random.randint(1,3)
2
>>> random.randint(1,3)
1

2.7 循环语句

源代码:

 print("媳妇儿,我错了")print("媳妇儿,我错了")print("媳妇儿,我错了")...(还有99997遍)...

改进如下:

 i = 0while i < 10000:print("媳妇儿,我错了")i += 1

2.8 while循环

  1. while循环的格式
  while 条件:条件满足时,做的事情1条件满足时,做的事情2条件满足时,做的事情3...(省略)...
  1. 练习题:循环打印5次
  i = 0while i < 5:print("当前是第%d次执行循环" % (i + 1))print("i=%d" % i)i+=1
  1. 结果:
   当前是第1次执行循环i=0当前是第2次执行循环i=1当前是第3次执行循环i=2当前是第4次执行循环i=3当前是第5次执行循环i=4

2.9 for 循环

for循环

  • 像while循环一样,for可以完成循环的功能。

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

for循环的格式:

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

demo1

name = 'itheima'for x in name:print(x)

运行结果如下:

i
t
h
e
i
m
a

demo2

>>> name = "hello"
>>> for x in name:print(x)if x == 'l':print("Hello world!")

运行结果如下:

h
e
l
Hello world!
l
Hello world!
o

demo3

# range(5) 在python就业班中进行讲解会牵扯到迭代器的知识,
# 作为刚开始学习python的我们,此阶段仅仅知道range(5)表示可以循环5次即可
for i in range(5):print(i)'''
效果等同于 while 循环的:i = 0
while i < 5:print(i)i += 1
'''

运行结果如下:

0
1
2
3
4

2.10 continue 和 break

2.10.1 break

<1> for循环
普通的循环示例如下:

name = 'itheima'for x in name:print('----')print(x)
else:print("==for循环过程中,如果没有执行break退出,则执行本语句==")

运行结果:

----
i
----
t
----
h
----
e
----
i
----
m
----
a
==for循环过程中,如果没有break则执行==

带有break的循环示例如下:

name = 'itheima'for x in name:print('----')if x == 'e': breakprint(x)
else:print("==for循环过程中,如果没有执行break退出,则执行本语句==")

运行结果:

----
i
----
t
----
h
----

<2> while循环
普通的循环示例如下:

i = 0while i<5:i = i+1print('----')print(i)
else:print("==while循环过程中,如果没有执行break退出,则执行本语句==")

运行结果:

----
1
----
2
----
3
----
4
----
5
==while循环过程中,如果没有break则执行==

带有break的循环示例如下:

i = 0while i<5:i = i+1print('----')if i==3:breakprint(i)
else:print("==while循环过程中,如果没有执行break退出,则执行本语句==")

运行结果:

----
1
----
2
----

小结:
break的作用:立刻结束break所在的循环

2.10.2 continue

<1> for循环
带有continue的循环示例如下:

name = 'itheima'for x in name:print('----')if x == 'e': continueprint(x)
else:print("==while循环过程中,如果没有break则执行==")

运行结果:

----
i
----
t
----
h
----
----
i
----
m
----
a
==while循环过程中,如果没有break则执行==

<2> while循环
带有continue的循环示例如下:

i = 0while i<5:i = i+1print('----')if i==3:continueprint(i)

运行结果:

----
1
----
2
----
----
4
----
5

小结:
continue的作用:用来结束本次循环,紧接着执行下一次的循环

2.10.3. 注意点
  • break/continue只能用在循环中,除此以外不能单独使用
  • break/continue在嵌套循环中,只对最近的一层循环起作用

2.11 总结

更多推荐

Python入门基础(一)

本文发布于:2024-02-07 07:03:31,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754372.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:入门   基础   Python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!