四. Python基础(4)--语法
四. Python基础(4)--语法
1 ● 比较几种实现循环的代码
i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次 sum += i i += 1 print(sum)
sum = 0 for i sum += i print(sum)
i = 0 sum = 0 while True: i += 1 if i <=10: sum += i else: break print(sum) |
试着对照C语言的代码: |
#include <stdio.h>
void { int int for(i=1;i<=10;i++) # 循环10-1+1=10次 sum+=i; printf("%d", sum); getchar(); }
//等价于: void { int int while(i<=10){ sum+=i; i++; }
printf("%d", sum); getchar(); } |
2 ● while循环和for循环
for循环--一般用于有限循环 while循环—一般用于无线循环 |
3 ● range()和xrange()
# py2中: # range(),用于生成连续的数字,列表类型 # xrange(),用于生成连续的数字,for循环时才能使用,返回一个生成器(generator, 也是一种数据类型)
# py3中 # range() = py2的xrange(), for循环时才能使用,返回一个生成器 |
for i in range(10): print(i, end = " ") print("\n") for i in range(1, 11): # 默认步长为1 print(i, end = " ") print("\n") for i in range(10, 0, -1): print(i, end = " ") print("\n") for i in range(0, 11, 2): print(i, end = " ") print("\n") for i in range(10, 0, -2): print(i, end = " ") |
0 1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
0 2 4 6 8 10
10 8 6 4 2 |
4 ● 对于input()函数得到的字符串, 如果希望是数字, 一般要做如下检验和处理:
① strip() index = index.strip() ② isdecimal if index.isdecimal() ③根据实际需求判断index的范围 |
5 ● 可迭代对象
for循环的,就是可迭代对象 有关可迭代对象, 详见: http://python.jobbole.com/87805/ |
6 ● 代码案例(flag = True/False)
# li = ['alex', 'eric' ,'rain'] # 利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain" |
li = ["alex", "eric", "rain"] msg = "" is_first = True for item in li: if is_first: msg += item is_first = False else: msg += "_" + item print(msg)
msg = "" is_first = True for item in li: if is_first: tmp = item is_first = False else: tmp = "_" + item msg += tmp # 这一步必然执行!!!!! print(msg) |
7 ● 字符串按每行三个字母显示, 并计算可显示多少行?
index = 0 content = input("请输入字符串:")
for i in content: index += 1 if index % 3 == 0: print(i, end= "\n") else: print(i, end = " ") print("\n") if len(content) % 3 == 0: count = len(content) / 3 else: count = int(len(content)/3) + 1 # 也可以用len(content)//3 print(count) |
8 ● 有关作用域
# 只要一个语句执行了, 那么这个语句内的变量就会放在内存, 即允许使用. # if 1 == 1: # name = '123' # print(name) # 123
# 上面的案例如果是在C/C++, Java中会报错, 因为name的作用域只在if语句内
# if 1!=1: # name = '123' # print(name) # 报错
# 如果变量名未定义,则报错. |
a = 0 while True: a = a + 1 if a >= 10: break print(a) # 10 |
9 ● split知识扩充
formula = input("请输入加法算式:") a,b = formula.split("+") print(int(a) + int(b)) |
请输入加法算式: 5 + 9 14 |
formula = input("请输入加法算式:") tmp = formula.split("+", 1) # ['5', '8+9'], 1表示分割次数 # tmp = formula.split("+", 2) # 5+8+9 print(tmp) |
四. Python基础(4)--语法的更多相关文章
- 二. Python基础(2)--语法
二. Python基础(2)--语法 1.实现一个简单的登录系统 '''# 形式1 n = 1 while n < 4: name = input("请输入姓名\n" ...
- 二十四. Python基础(24)--封装
二十四. Python基础(24)--封装 ● 知识结构 ● 类属性和__slots__属性 class Student(object): grade = 3 # 也可以写在__slots ...
- 十四. Python基础(14)--递归
十四. Python基础(14)--递归 1 ● 递归(recursion) 概念: recursive functions-functions that call themselves either ...
- 六. Python基础(6)--语法
六. Python基础(6)--语法 1 ● Python3中, Unicode转字节的方法 print(bytes("李泉", encoding = 'utf-8')) prin ...
- 五. Python基础(5)--语法
五. Python基础(5)--语法 1 ● break结束的是它所在的循环体, continue是让它所在的循环体继续循环 # 打印: 1 10 2 10 3 10 4 10 5 10 6 10 7 ...
- 三. Python基础(3)--语法
三. Python基础(3)--语法 1. 字符串格式化的知识补充 tpl = "我是%s,年龄%d,学习进度100%" %('Arroz',18) print(tpl) # 会提 ...
- 一. Python基础(1)--语法
一. Python基础(1)--语法 1. 应用程序 1.1 什么是计算机(Computer)? 组成 ①运算器 arithmetic unit; ※ Arithmetic unit and cont ...
- Python基础:语法基础(3)
本篇主要介绍Python中一些基础语法,其中包括:标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 1. 标识符和关键字 1.1 标识符 标识符是变量.常量.函数.属性.类.模块和包等 ...
- Python基础__Python语法基础、条件、循环
之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环.本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的Python语法规则 1.语句 ...
随机推荐
- 主元素问题 Majority Element
2018-09-23 13:25:40 主元素问题是一个非常经典的问题,一般来说,主元素问题指的是数组中元素个数大于一半的数字,显然这个问题可以通过遍历计数解决,时间复杂度为O(n),空间复杂度为O( ...
- Linux chpasswd (批量或单一修改用户密码)和passwd(直接修改用户密码)
Linux命令:chpasswd 批量或者单一修改用户密码 语法: 1:# echo 用户名:密码 | chpasswd 2:# chpasswd < doiido.txt 实例 1.直接修改d ...
- python+selenium基础之XPATH定位(第一篇)
世界上最远的距离大概就是明明看到一个页面元素矗在那里,但是我却定位不到!! selenium定位元素的方法有很多种,像是通过id.name.class_name.tag_name.link_text等 ...
- Centos6.5 升级Openssl + Openssh
xu言: 平时很懒,都不想写blog.今天(2018.05.15)开始尝试每天写一篇吧,看我自己能坚持多久! 准备工作: 为了防止在操作过程中导致ssh远程中断,首先安装一个telnet-server ...
- Linux网桥配置
CentOS:1.配置临时网桥,重启后风格配置丢失[root@CentOS ~]# yum -y install bridge-utils[root@CentOS ~]# brctl addbr br ...
- 关于ActionBar 左侧添加完返回后 点击无效的问题
ActionBar actionBar =getSupportActionBar(); if(actionBar!=null){ actionBar.setHomeAsUpIndicator(R.mi ...
- 关于Androidstudio无法获取到所有的SDk版本,需要挂国内镜像的问题
由于墙的原因 我们在使用AndroidStudio的时候SDK Manager无法获取到所有的版本 需要我们设置下使用国内的镜像 ****首先打开Android SDK Manager 然后按照如图 ...
- ASP.Net MVC多语言
.NET MVC 多语言网站 通过浏览器语言首选项改变MVC的语言,通过浏览器语言选项,修改脚本语言. 一.添加资源文件 1.添加App_GlobalResources文件夹. 2.添加默认的资源文件 ...
- android-------- 常用且应该学习的框架
今天来分享一下一些常用的库,在Github 上 star数也是很高的,开发中也是很常用的: 简单的分享一下,一起学习. http://www.xiufm.com/blog-1-944.html 框架名 ...
- 4、Ubuntu系统环境变量详解
参考:Linux公社Ubuntu系统环境变量详解 UNIX/Linux系统中的环境变量和库文件的使用方法 由于Linux系统严格的权限管理,造成Ubuntu系统有多个环境变量配置文件,因此我们需要了解 ...