首页 > 其他分享 >循环和字符串·

循环和字符串·

时间:2023-12-01 22:14:15浏览次数:38  
标签:字符 引号 print range 循环 字符串

循环

FOR循环和循环范围

sites = ["Baidu", "Google","Runoob","Taobao"]for site in sites:print(site)

以上代码执行输出结果为:

Baidu Google Runoob Taobao

FOR循环的特点

基于提供的范围,重复执行特定次数的操作

range是什么东西

range(x,y)是左闭右开区间,包含x,不包含y

sum(range(5,10))

就是5+6+7+8+9的和

如果我们省略第一个参数

比如range(6)则默认起始范围为0,等价于range(0,n+1)

如果我们添加第三个参数

第三个参数为步长,类似于等差数列

步长为-1的话类似于反转函数

range(0,10,-1)

等价于

reversed(range(0,10,1))

FOR嵌套循环

下面的代码将输出二维坐标 def printCoordinates(xMax,yMax): for x in range(1,xMax+1): for y in range(1,yMax+1): print(f"( {x} ,{y} ) ",end="" )

print()

执行 printCoordinates(5,5)

(1,1)(1,2)(1,3)(1,4)(1,5) (2,1)(2,2)(2,3)(2,4)(2,5)

(3,1)(3,2)(3,3)(3,4)(3,5)

(4,1)(4,2)(4,3)(4,4)(4,5)

(5,1)(5,2)(5,3)(5,4)(5,5)

WHILE循环

不知道循环什么时候停下来,用while循环

BREAK和CONTINUE

continue跳过这次循环

break跳出当前整个循环

pass啥也不做,占位

假·死循环

与环境交互后,在特定条件下终止的循环

isPrime判断质数

不是最快的写法,但最容易理解 `def isPrime(n): if n <2: return False for factor in range(2,n): if n % factor ==0: return False return True`

字符串

四种引号

引号的作用就是将文字包裹起来,告诉Python"这是个字符串!"

单引号'和双引号"是最常见的两种字符串引号
`` print('单引号')`        
`print(“双引号")`

单引号

双引号

三个引号的情况不太常见,但是它在一些场合有特定的作用(如函数文档doc-strings)

print('''三个单引号''') print("""三个双引号""")`

三个单引号

三个双引号

我们为什么需要两种不同的引号?

为了写出这样的句子 print("聪明办法学 Python 第二版的课程简称是P25") 聪明办法学 Python 第二版的课程简称是"P2S"

如果我们偏偏要用一种引号呢

这会导致语法错误,Python 无法正确判/断一个字符串的终止位置

字符串中的换行符号

前面有反斜杠 的字符,叫做转义序列比如\n 代表换行,尽管它看起来像两个字符,但是Python 依然把它视为一个特殊的字符

三引号里面'\'用来取消换行

其他的转义序列

\ 加一个引号能打出单独的引号

两个\输出一个\

\t是制表符也是跳格键,相当于Tab

转义序列只作为一个字符存在

repr函数能看到python内部函数究竟长啥样

一些字符串常量

import string print(string.ascii_letters) abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

print(string.ascii_lowercase) abcdefghijklmnopqrstuvwxyz

print("string.ascii_uppercase) ABCDEFGHIJKLMNOPORSTUVWXYZ

diigits是数字类型

punctuation是标点符号

printable是所有python支持的字符

whitespase是空白字符

字符串可以运算

in 运算(超级好用!)

1 print("ring" in "strings") # True 2 print("wow” in "amazing!") # False 3 print("Yes"in "yes!") # False 4 print(“" in "No way!") # True 5 print("聪明"in"聪明办法学 Python")# True

字符串索引和切片

单个字符索引

索引可以让我们在特定位置找到一个字符

1 s ="Datawhale' 2 print(s) 3 print(s[0]) 4 print(s[1])

5 print(s[2])

6 print(s[3])

Datawhale

D

a

t

a

负数索引

-1代表倒数第一个

用切片来获取字符串的一部分

print(s[0:4])

print(s[4:9])

左闭右开原则

左边没参数默认0,右边没参数默认-1

切片的第三个参数step

类似range的用法

翻转字符串

  1. print(s[::-1])

    可以,但不优雅

  2. print("".join(reversed(s)))

    可以,也不优雅

  3. def reverseString(s):

    return s[::-1]

print(reverseString(s))

优雅,实在是太优雅了

字符串循环

用索引的for循环

for i in range(len(s)):

print(i,s[i])

output:

0 D

1 A

2 T

3 A

其实可以不用索引,用in

<!--for c in s:-->

<!--print (c)-->

output:

D

A

T

A

或:

for idx,c in enumerate(s):

print(idx,c)

0 D

1 A

2 T

3 A

zip函数

zip(a,b)可以在一次循环中,分别从a和b里面同时取出一个元素

split

class_name.split() 本身会产生一个新的叫做“列表的东西,但是它不存储任何内容 class_name = "learn python the smart way 2nd edition"

for word in class name_split(): print(word) output: learn python

the

smart way

2nd

edition ['learn','python','the',smart'"way','2nd',edition']

一些和字符串相关的内置函数

str()和len()

ord():输入字符输出ascii码

chr():相反

标签:字符,引号,print,range,循环,字符串
From: https://www.cnblogs.com/gaoshiyu/p/17870952.html

相关文章

  • 【leetcode 2949 统计美丽子字符串】
      importjava.util.HashMap;importjava.util.Map;classSolution{publicstaticvoidmain(String[]args){Solutionsolution=newSolution();longans=solution.beautifulSubstrings("baeyh",2);System.out.printl......
  • 集合框架Map的常见使用及循环的五中方式
    Map集合是什么?Map集合是一种以键值对形式存储和操作数据的数据结构,建立了key-value之间的映射关系,常用于存储和处理复杂的数据Map集合的主要特点:Map和List不同,Map是一种双列集合;Map存储的是key-value的映射关系;Map不保证顺序。在遍历时,遍历的顺序不一定是put......
  • python循环与字符串
    循环与字符串循环for循环与范围defsumfromton(m,n):total=0forxinrange(m,n+1):#注意:range(x,y)是左闭右开区间,包含x,不包含ytotal+=xreturntotaldefsumfromton(m,n):returnsum(range(m,n+1))结果相同range(m,n,k)第一个参数m指起始范围第二个参数n指终......
  • python--循环和字符串
    Task5和6循环和字符串for循环和循环范围for循环的特点基于特定的范围,重复执行规定次数的操作deff(m,n):total=0foriinrange(m,n+1):total+=ireturntotalf(5,10)计算机会计算5+6+7+8+9+10最后输出计算结果range()函数需要注意的是这个范围是......
  • 一文带你掌握C语言的循环结构
    C语言循环结构详解在C语言中,循环结构是一种重要的控制结构,它允许我们重复执行一段代码,以达到特定的目的。循环结构可以帮助我们简化重复性的任务,提高代码的效率。本篇文章将深入探讨C语言中的循环结构,包括while循环、for循环、do-while循环以及循环中的控制语句。1.while......
  • while循环
    循环结构循环结构是一种程序控制结构,用于反复执行一组语句,直到满足某个条件【一】while循环(1)语法whilecondition:#循环体while是循环的关键字condition是循环的条件,当条件为真时,循环体会一直执行(2)使用count=0whilecount<5:count+=1ifcount......
  • 【C语言】【二级】将所指字符串中所有下标为奇数位置上的字母转换成大写
    题目请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)。例如,若输入"abc4EFG",则应输出"aBc4EFG"。考点考点:指针、ASCII码、数组和循环语句。解法:通过循环语句依次判断数组下标为奇数的元素是否为小写字母......
  • chap5 循环 chap6 字符串
    chap5循环for循环和循环范围-1.基于提供的范围,重复执行特定次数的操作-实例foriinrange(m,n): total+=x默认左闭右开-2.range():省略第一个参数:默认起始为0加入第三个参数:为步长stepfor嵌套循环```defstars(n,m):#输出n*m的星型矩阵forrow......
  • pwn知识——格式化字符串漏洞(萌新向)
    怎么说呢,这个东西感觉相当不好写,涉及到的知识点很多,不一定能讲明白,我自己写的话只能尽量往基础的知识点上写了,若有不准确之处,希望佬们能及时指出,让我加以修改。格式化字符串漏洞概念格式化字符串漏洞的形成原因在于printf/fprintf/vsprintf等格式化字符串打印函数在接受可变参......
  • 【滑动窗口】无重复字符的最长字串、找到字符串中所有字母异位词、串联所有单词的子串
    一、无重复字符的最长子串题目描述定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。题目链接:无重复字符的最长子串示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度为3。示例2:输入:s="bbbbb"输出:1解释:因......