马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

Python3程序设计指南:01 过程型程序设计快速入门

[复制链接]
查看2272 | 回复1 | 2019-10-17 09:43:35 | 显示全部楼层 |阅读模式

大家好,从本文开始将渐渐更新Python教程指南系列,为什么叫指南呢?由于本系列是参考《Python3程序计划指南》,也是作者的学习笔记,希望与读者共同砚习。

  1. <code>.py文件中的每个估计都是次序实验的,从第一行开始,逐行实验的。 </code>
复制代码

Python的8个关键要素

094335t9mit0n0tq03mz0n.gif

1、数据范例

  • int整数(正整数或负整数)
    • Python所能表现的整数大小只受限于呆板内存
    • 使用int()可以将字符串转换为整数,允许字符串头尾带有空格,例如:int("68")
  • str字符串(Unicode字符序列)
    • 使用方括号([])来存取字符串序列中的某一项
    • 使用str()险些可以将任何数据项转换为字符串

2、对象引用

  • 界说:存储某种数据范例的变量
  • 语法:objectReference=value
  • 不必要预先的声明语句,也不必要指定数据范例

  • 在Python中,"="的作用是将对象引用与内存中的某对象进行绑定,假如对象引用已经存在,就简单的进行绑定,以便引用”=“利用符右面的对象;假如对象引用尚未存在,就由”=“利用符创建对象引用。
  • 限制:不能与任何Python关键字相同
  • Python使用 “动态范例” 机制,也就是说,在任何时间,只要必要,某个对象引用都可以重新引用一个差别的对象(可以是差别的数据范例)。

  1. <code>temp = 123
  2. print(temp, type(temp))
  3. temp = &#39;hello&#39;
  4. print(temp, type(temp))
  5. output:
  6. 123 <class &#39;int&#39;>
  7. hello <class &#39;str&#39;></code>
复制代码

3、组合数据范例

  • 元组列表可以用于存储任意数量、任意范例的数据项。元组是固定的,创建之后就不能改变;列表是可变的,在必要的时间,可以插入大概移除数据项。
  • 实质上,列表与元组并不真正存储数据项,而是存放对象引用,创建列表与元组时(以及在列表中插入数据项时),现实上是使用其给定的对象引用的副本,在字面意义项(比如整数或字符串)的环境下,会在内存中创建适当数据范例的对象,而存放在列表或元组中的才是对象引用。
  • 点(存取属性)利用符用于存取某对象的属性

4、逻辑利用符

4.1 身份利用符:is。

  • 并不必须对进行比较的对象本身进行查抄,is利用符只必要对对象地点的内存地址进行比较——同样的地址存储的是同样的对象。
  1. <code>a = [1, &#39;abc&#39;]
  2. b = [1, &#39;abc&#39;]
  3. print(a is b)
  4. a = (1, &#39;abc&#39;)
  5. b = (1, &#39;abc&#39;)
  6. print(a is b)
  7. a = b
  8. print(a is b)
  9. output:
  10. False
  11. False
  12. True</code>
复制代码

4.2 比较利用符:==、!=、>、>=、<、<=

  • 与身份运算符差别,比较运算符进行的是值比较,即比较两个引用对象所指向的值。
  1. <code>a = [1, &#39;abc&#39;]
  2. b = [1, &#39;abc&#39;]
  3. print(a is b)
  4. a = (1, &#39;abc&#39;)
  5. b = (1, &#39;abc&#39;)
  6. print(a is b)
  7. a = b
  8. print(a is b)
  9. output:
  10. True
  11. True
  12. True</code>
复制代码
  • 结链比较
  1. <code>a = 9
  2. print(0 <= a <= 10)
  3. output:
  4. True</code>
复制代码

4.3 成员利用符:in。

in来测试成员关系,用not in来测试非成员关系。

  1. <code># in运算符
  2. a = (3, 45, &#39;hello&#39;, {&#39;name&#39;: &#39;lisi&#39;})
  3. print(45 in a)
  4. string = &#39;zhangsan|wanger&#39;
  5. print(&#39;|&#39; in string)
  6. output:
  7. True
  8. True</code>
复制代码

4.4 逻辑运算符:and、or与not。

  • and与or都使用short-circuit逻辑,并返回决定结果的利用数——而不是返回布尔值(除非现实上就是布尔利用数)。
  • not返回布尔型结果

5、控制流语句

在Python中,一块代码,也就是说一条大概多条语句组成的序列,称为suit。

5.1 if语句(if...elif...else...)

语法:

  1. <code>if boolean_expression1:
  2. suite1
  3. elif boolean_expression2:
  4. suite2
  5. else:
  6. suite3</code>
复制代码

5.2 while语句

while语句用于0次或多次实验某个suite,循环实验的次数取决于while循环中布尔表达式的状态,其语法为:

  1. <code>while boolean_expression:
  2. suite</code>
复制代码

5.3 for...in语句

for循环语句重用了关键字in,其语法为:

  1. <code>for variable in iterable:
  2. suite</code>
复制代码

5.4 根本的非常处置处罚

Python的许多函数与方法都会产生非常,并将其作为发生错误或紧张事故的标记。其语法为:

  1. <code>try:
  2. try_suite
  3. except exception1 as variable1:
  4. exception_suite1
  5. ...
  6. except exceptionN as variableN:
  7. excetpion_suiteN</code>
复制代码

此中as variable部门是可选的。

6、算术利用符

  • int数据范例是固定的,一旦赋值就不能改变

  • 除法利用符(/)产生一个浮点值
  • 剥离利用符(//)产生一个整数值
  • 增强赋值利用符
    • 不可变数据范例:a+=8:a+8之后产生新的int对象,并与a重新绑定
    • 可变数据范例:使用+=后,原始值改变,不会重新绑定
    • a+=b与a=a+b区别:前者只查询一次a的值,有更快的可能性
    • 字符串列表+=和append的区别
      • li = ['aaa','bbb'] li += 'ccc' => li = ['aaa','bbb','c','c','c']
      • li = ['aaa','bbb'] li.append( 'ccc') => li = ['aaa','bbb','ccc']

7、输入/输出

  • 内置input()函数,用来吸收用户的输入,输入之后按Enter键结束输入
  • 内置print()函数可以输出所有python数据范例

8、函数的创建与调用

创建函数语法:

  1. <code>def functionName(arguments):
  2. suite</code>
复制代码
  • arguments可选,假如为多个参数,用逗号隔开
  • 每个函数有一个返回值,默以为None,可以使用return value来订定返回值,可以是一个值,也可以是一组值
  • 实验def时会创建一个函数对象,同时创建一个带有指定名的对象引用

实例

为了认识以上关键要素,我们用一个实例来练习一下:

创建一个天生随机整数组成的网格程序,用户可以规定必要多少行、多少列,以及整数地点的地域。

  • 起首引入random模块,该模块用于天生随机数:
  1. <code>import random</code>
复制代码
  • 构建获取用户输入函数

    该函数必要3个参数:msg为提示信息,minimum为最小值,default为默认值。该函数的返回值有两种环境:default(用户没有输入直接按Enter键),大概一个有效的整数。

  1. <code>def get_int(msg, minimum, default):
  2. while True:
  3. try:
  4. line = input(msg)
  5. # 假如输入值为空并且default不为None
  6. if not line and default is not None:
  7. return defalut
  8. # 将输入转为整形
  9. i = int(line)
  10. # 假如输入值小于最小值,提示用户
  11. if i < minimum:
  12. print("must be >=", minimum)
  13. else:
  14. return i
  15. # 非常处置处罚
  16. except ValueError as e:
  17. print(e)</code>
复制代码
  • 让用户输入相干的值
  1. <code># 用户输入行数
  2. rows = get_int(&#39;rows:&#39;, 1, None)
  3. # 用户输入列数
  4. columns = get_int(&#39;columns&#39;, 1, None)
  5. # 用户输入最小值
  6. minimum = get_int(&#39;minimum(or Enter for 0):&#39;, -10000, 0)
  7. default = 1000
  8. # 假如最小值大于default,default设置为最小值的2倍
  9. if default < minimum:
  10. default = 2 * minimum
  11. # 用户输入最大值
  12. maximum = get_int(&#39;maximum (or Enter for&#39; + str(default) + &#39;)&#39;, minimum, default)</code>
复制代码
  • 根据用户输入输出随机值:
  1. <code>row = 0
  2. while row < rows:
  3. line = &#39;&#39;
  4. column = 0
  5. while column < columns:
  6. # 天生一个大于minimum,小于maximum的随机整数
  7. i = random.randint(minimum, maximum)
  8. s = str(i)
  9. # 让每个数占10个字符,为了输出整齐
  10. while len(s) < 10:
  11. s = &#39; &#39; + s
  12. line += s
  13. column += 1
  14. print(line)
  15. row += 1</code>
复制代码

以下为输出信息:

  1. <code>rows:5
  2. columns7
  3. minimum(or Enter for 0):-1000
  4. maximum (or Enter for1000)1000
  5. -871 -205 426 820 986 369 238
  6. -389 485 388 -907 243 346 -912
  7. -885 528 50 -572 744 519 -128
  8. 785 -747 -565 -390 522 -357 933
  9. -144 947 -949 -409 105 954 708</code>
复制代码

注:本文知识先容Python的8个关键要素,但是并没有完全先容,比如数据范例不但包罗整形和字符串,反面的文章中还会具体先容。


094339ext0npcpn889a87s.png

本文由博客一文多发平台 OpenWrite 发布!







来源:https://www.cnblogs.com/fatcat01/p/11688346.html
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则