python for循环

python浓缩(2)Python起步

旧时模样 提交于 2019-12-09 14:20:49
本章对Python 的主要特性做一个快速介绍。 在所有的交互示例中,你会看到Python 的主提示符( >>> )和次提示符( ... )。主提示符是解释器告诉你它在等待你输入下一个语句,次提示符告诉你解释器正在等待你输入当前语句的其它部分。 语句和表达式(函数、算术表达式等): 语句使用关键字来组成命令,类似告诉解释器一个命令; 表达式没有关键字。它们可以是使用数学运算符构成的算术表达式,也可以是使用括号调用的函数; 2.1 程序输出,print 语句及“Hello World!” 在交互式解释器中,可以用 print 语句显示变量的字符串表示,或者仅使用变量名查看该变量的原始值。 2.2 程序输入和raw_input()内建函数 下划线(_)在解释器中有特别的含义, 表示最后一个表达式的值 。 Python 的print 语句,与字符串格式运算符( % )结合使用,可实现字符串替换功能。 %s 表示由一个字符串来替换;%d 表示由一个整数来替换;%f表示由一个浮点数来替换; Print 语句也支持将输出重定向到文件。符号 >> 用来重定向输出,下面这个例子将输出重定向到标准错误输出: import sys print >> sys.stderr, 'Fatal error: invalid input!' import sys print >> sys.stderr,

【python】 - 一般语法结构(2)

爱⌒轻易说出口 提交于 2019-12-09 12:10:25
【python】 - 一般语法结构(2) 2.1 条件判断 if语句 #当x是非零数值,非空字符串,非空list等,执行if条件满足的语句 x = 1 if x : print ( True ) True if else语句 x = int ( input ( 'birth:' ) ) #input输入的为字符串类型,需要转成int类型 if x < 2000 : print ( '00前' ) else : print ( '00后' ) birth:2010 00后 if elif语句 #当有两个或两个以上的判断语句时,需要使用elif判断 score = 90 if score < 60 : print ( "不及格" ) elif score < 70 : print ( '中等' ) elif score < 80 : print ( '良好' ) else : print ( '优秀' ) 优秀 2.2 分支循环 for循环 #遍历list,输出list中的元素 fruits = [ 'apple' , 'grape' , 'banana' , 'melon' ] for fruit in fruits : print ( fruit ) apple grape banana melon #0-100的整数求和 sum = 0 for i in range ( 101

python基础学习2

梦想的初衷 提交于 2019-12-08 22:26:36
python中的运算符 1、算术运算符:用来做算术运算的符号 ①、+ :求和,也可以做连接符 ②、 - :求差 ③、 * : 求积 ④、 / :求商 ⑤、% :取余 ⑥、// :取整 ⑦、** :次方 注意:只能是数值 print(3*3) #求积结果:9 print(9/2) #相除结果:4.5 print(3**4) #3的4次方,结果:81 print(9//4) #小数部分直接丢掉,取整结果:2 print(13%3) #取余结果:1   运行结果是 9 4.5 81 2 1   比较运算符:用来比较(值只可能是布尔类型[真True或假False]) == > < >= <= !=(不等于) 注意:== 比较字符串时,比较的是字符串的内容,其他比较都是数值(字符串的长度) score = 80 print(score > 90) print(score == 80) print(score >= 60) print(score != 80)   运行结果: False True True False   赋值运算符 = +=(可以做连接符) -= *= **= /= %= //= 注意:赋值运算符的左侧一定是个变量,右侧一定要有个数据 = :将右边的值给左边;其他:将两边的结果给左边 num = 3 #赋值 num += 6 #赋值 print(num) num2 = 3

python 循环

僤鯓⒐⒋嵵緔 提交于 2019-12-08 15:51:27
python 循环 # 循环语句 """ 循环语句有 for 和 while while 注意改变循环条件 通过设置条件表达式永远不为 false 来实现无限循环 while循环体中只有一条语句,你可以将该语句与while写在同一行中 break 跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行 continue 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。 pass 空语句,是为了保持程序结构的完整性 不做任何事情,一般用做占位语句 """ # while 循环 """ while 判断条件(condition): 执行语句(statements)…… """ i = 1 sum = 0 while i <= 100: i += 1 sum += i print(sum) # while 循环使用 else 语句 """ while <expr>: <statement(s)> else: <additional_statement(s)> """ while i <= 100: i += 1 sum += i else: print('已经大于100了') print(sum) # 简单语句组 while循环体中只有一条语句,你可以将该语句与while写在同一行中 # flag = 1 #

python解析json文件回顾(load/loads)

谁说我不能喝 提交于 2019-12-08 10:53:37
example.json文件如下 { " page ": "user" , " uri ": "/userinfo" , " elements ": [ { " var_name ": "username" , " description ": "登录用户名" }, { " var_name ": "password" , " description ": "登录密码" } ] , " data ": { " userlist ": [ { " username ": "张三" , " password ": "******" }, { " username ": "李四" , " password ": "******" } ] , " total ": 2 } } 读取json文件(解析json文件) with open ( 'example.json' , 'r' ) as jsonfile: json_string = json. load (jsonfile) 解释: json.load是decode的一种方式,即将json文件中的数据类型解析成python的数据类型,数据类型解析前后的规则如下表: 即json文件(object)解析成了一个大字典(dict),字典中嵌套了list/unicode/boolean/None/dict等数据类型. 其他说明: json

【leetcode】#字符串【Python】6.ZigZag Conversion Z 字形变换

蓝咒 提交于 2019-12-08 06:58:33
链接: https://leetcode-cn.com/problems/zigzag-conversion/ 题目: 将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下: L C I R E T O E S I I G E D H N 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。 我的解法: class Solution ( object ) : def convert ( self , s , numRows ) : if numRows == 1 : return s res = [ "" for x in range ( numRows ) ] # num个数一循环 num = numRows * 2 - 2 for i in range ( len ( s ) ) : # idx是在一个循环中是第几个数 idx = ( i + 1 ) % num idx = idx if idx != 0 else num # row是在第几行append row = numRows - abs ( idx - numRows ) - 1 res [ row ] += s [ i ] result = "" . join (

leetcode_[python/C++逐步深入] 43. Multiply Strings_(大数乘法分析)

落爺英雄遲暮 提交于 2019-12-08 06:25:29
题目链接 【题目】 Given two numbers represented as strings, return multiplication of the numbers as a string. Note: The numbers can be arbitrarily large and are non-negative. Converting the input string to integer is NOT allowed. You should NOT use internal library such as BigInteger . 【分析】 先看下python的写法: 使用reduce是及其简便的写法,而且效率很高 class Solution (object) : def multiply (self, num1, num2) : """ :type num1: str :type num2: str :rtype: str """ num1 = reduce( lambda x, y: x * 10 + y, [ord(i) - 48 for i in num1]) # '0' is 48 in ascii num2 = reduce( lambda x, y: x * 10 + y, [ord(i) - 48 for i in num2]) return

43. 字符串相乘_python

本秂侑毒 提交于 2019-12-08 06:13:04
【题目】 【思路】 输入是两个字符串形式的非负整数,返回乘积结果的字符串形式,不允许转换成整数再进行处理。即最简单直接 return str(int(num1) * int(num2)) 。 将num2每位依次乘以num1每位,再移位相加,先不处理进位情况 处理进位: 通过整除%和求余数\计算该位数和进位数,进位数加给前一位。 最后要删除res中前面的0 【python代码】 class Solution : # @param num1, a string # @param num2, a string # @return a string def multiply ( self , num1 , num2 ) : m = len ( num1 ) n = len ( num2 ) ans = [ 0 for i in range ( m + n ) ] if num1 == '0' or num2 == '0' : return '0' for i in range ( m - 1 , - 1 , - 1 ) : for j in range ( n - 1 , - 1 , - 1 ) : ans [ i + j + 1 ] += int ( num1 [ i ] ) * int ( num2 [ j ] ) res = [ ] for i in range ( m + n -

python装X语法与内置函数

家住魔仙堡 提交于 2019-12-08 04:47:20
Python 装X语法与内置函数 一、列表推导式 from random import randint li0 = [ i ** 2 for i in range ( 10 ) ] li1 = [ randint ( 0 , 100 ) for i in range ( 10 ) ] # 生成10个随机数 li2 = [ i for i in range ( 10 ) if i % 2 == 0 ] # 筛选出偶数 li3 = [ i * j for i in range ( 1 , 10 ) for j in range ( 1 , 10 ) ] # for循环嵌套,输出99乘法表 print ( li0 ) print ( li1 ) print ( li2 ) print ( '99乘法表:\n' , li3 ) [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] [7, 56, 22, 22, 90, 88, 80, 40, 48, 83] [0, 2, 4, 6, 8] 99乘法表: [1, 2, 3, 4, 5, 6, 7, 8, 9, 2, 4, 6, 8, 10, 12, 14, 16, 18, 3, 6, 9, 12, 15, 18, 21, 24, 27, 4, 8, 12, 16, 20, 24, 28, 32, 36, 5, 10,

python常用语法

主宰稳场 提交于 2019-12-08 04:45:12
(请点击目录) 前段时间学习,总是学到新的python语法类,库类的知识,遇到的就写一篇博客,有点散落,今天花写时间整理成一篇python基础小杂烩,之后遇到的类似的问题会持续更新下面。 字符串替换replace() 将“hello world”替换为“hello python” str = "hello world" str.replace("world","python") //hello python 字符串查找find() find用于字符串查找,不存在返回值为-1。 str = "123" str.find('0') //-1 join()函数的用法: 函数描述 python join()方法用于将序列中的元素以指定的字符连接成一个新的字符串。 语法 s.join(sequence) 参数 sequence :要连接的元素序列 。 s : 连接的方式 返回值 返回通过指定字符连接序列中元素后生成的新字符串。 实例 # -*- coding:utf-8 -*- s = '*' seq = ( "a" , "b" , "c" ) #字符串序列 print s . join ( seq ) 输出: a *b *c 输出中文 #python2.7 # -*- coding: utf-8 -*- print u'许娜' zfill()语法 函数描述 Python zfill()