Python心经(2)

news2024/11/17 3:27:59

有关数字类型,字符串,函数

目录

有关数字类型,字符串,函数

数字

字符串

索引操作

切片操作

单个字符编码

运算符

还有一些常用的内置函数

Python输入函数

输出函数print()语法

python的函数也能给默认值

Python是个脚本语言,所以没有什么main函数,他是从上往下执行的


数字

常见的基本运算就不说了

引入math模块,里面有abs,pow,sqrt等等常用的函数

import math

num=9
print("开根号num是:",math.sqrt(num))


引入random模块包,,用来做随机数的

random(x)函数
随机生成一个 0 到 1 范围内的实数。

uniform(x, y)函数
随机生成一个 x 到 y 范围内的实数。

import random

print(random.random())

print(random.uniform(0,100))

字符串

第一节已经说了一些关于字符串的东西,这块在补充一些

索引操作

py的字符串也能像c一样用下标去访问,不同的是,py下标可以是负数访问,py里面其实是序列的概念,正数了就是从左往右去访问,负数就是从右向左访问。 注意0和-0都是第一个下标位置

序列索引支持非负数和负数,索引为非负数,从 0 开始,如下所示:

在这里插入图片描述
索引为负数由右向左计数,从 -1 开始,如图所示:

arr="hello world"
print(arr)
print(arr[0])
print(arr[1])
print(arr[-1])

切片操作

sname[start : end : step]

c同时也能访问范围字符串,第x个到第y个

如果冒号前面或者后面不写,说明访问到头或者尾巴

print(arr[1:5])

打印ello

print(arr[:5])
打印hello

print(arr[3:])
打印lo world

单个字符编码

Python 使用了 ord() 函数返回单个字符的编码,chr() 函数把编码转成相应字符。如下所示:

s = 'A'
print(ord(s))  打印65
print(chr(65))  打印A

运算符

之前我们已经介绍了大部分运算符,下面再来详细看一下字符串运算符。如下表所示:

运算符描述
+连接符
*重复输出
[]通过索引获取字符串中字符
[ : ]获取字符串中的一部分
in字符串中是否包含指定字符
not in字符串中是否不包含指定字符
r/R字符串原样输出

字符串配上 *  就是重复输出

举个例子 

print("A*3->:",s*3)

输出AAA

同样的对于输出py也可以像c一样有格式化的输出

当我们需要输出的内容中含有变量时,比如:Hello xxxxxx 为变量,此时便需要一种格式化字符串的方式,Python 使用 % 格式化字符串,常用占位符如下表所示:

python 格式化输出详解(占位符:%、format、f表达式)——上篇 理论篇_python format requires a mapping多字典使用的格式_大爽歌的博客-CSDN博客

python 格式化输出详解(占位符:%、format、f表达式)——下篇 实例篇_python输出占位符_大爽歌的博客-CSDN博客

占位符描述
%s格式化字符串
%d格式化整数
%f格式化浮点
a=55
print("hello %d" % a)

输出hello 55

 我们也可以使用字符串的 format() 方法进行格式化,先看下示例:

print('{0} {1}'.format('Hello', 'Python'))
输出Hello Python

检查子串在不在字符串里面

arr="hello world"

print("is" in arr)
print("ell" in arr)

还有一些常用的内置函数

  一些简单的例子:

python 内置函数max()和min()的用法_print (max(d),min(d))_不知哪来的烦恼的博客-CSDN博客

example_arr=[2,1,10,55]
print(max(example_arr))
print(sum(example_arr))
print(len(example_arr))

str="pslocahyyz"
print(max(str))
print(min(str))
print(sorted(str))
print(list(str))
print(len(str))

sts=["absc","kssk","plpz"]
print(max(sts))
print(min(sts))
print(len(sts))

Python输入函数

Python 提供了 input() 内置函数从标准输入(键盘)读入一行文本,默认的标准输入是键盘。

input()函数等待用户从键盘输入,接收一个字符串,包括空格,都可以输入。只有回车不接受,作为结束符。格式:

input([prompt])

其中,prompt是可选的,可作为提示信息。

返回值是从键盘输入的一行文本。

用户输入的任何内容Python 都认为是一个字符串,如果需要其他类型就需要转换函数,如:

float()  字符串或者整数-->浮点型

int()   字符串或浮点型-->整数型

str()   数字-->字符串

eval()  数字-->实数

chr()    ASCII值-->ASCII字符

例如:

a = input("请输入字符串:")

b= int(input(("请输入一个整数:")))

c = float(input("请输入一个数值:"))

输出函数print()语法

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

将 objects 打印到 file 指定的文本流,以 sep 分隔并在末尾加上 end。可选项 sep, end, file 和 flush 如果存在,它们必须以关键字参数的形式给出。

参数描述

objects 要输出的对象,是复数形式,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。

sep 用来间隔多个对象,默认值是一个空格。

end 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。

file    要写入的文件对象,默认是标准输出。

flush   输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。

print()无返回值。

注意py里面定义函数是以def开头的。下面给出一些例子

#定义函数以def开头
def function(a,b):
    if a>b:
        print("a>b")
    elif a<b:
        print("a<b")
    else:
        c=a+b
        print("a+b的合是:",c)
        
a=input()
b=input()
function(a,b)

print(1)#输出:1
print("Hello World") #输出:Hello World
a= 10
b= "Hi"
print(a,b) #输出:10 Hi
print("aaa""bbb") #输出:aaabbb
print("aaa","bbb") #输出:aaa bbb
print("aaa","bbb",sep=".") # 设置间隔符,输出:aaa.bbb
print("aaa","bbb",end=" ") # aaa bbb 以空格结尾,本来是换行结尾的

function(2,2)
function(5,2)
function("nihao","nihao")

python的函数也能给默认值

定义的很多语法很像c/c++,举个例子看看


def record(_id,_name,_socre=95,_college="清华大学"):
    print("id:",_id,"\n"
          "name:",_name,"\n"
          "socre:",_socre,"\n"
          "college:",_college)

record(1,"张三",98,"西安交通大学")
record(5,"李四")
#record("熊大") # error 没有给默认值的,不能不写

#上面函数用占位符可以写成下面形式

def record1(_id,_name,_socre=95,_college="清华大学"):
    print("id=%d\nname=%s\nsocre=%d\ncollege=%s" 
          %(_id,_name,_socre,_college))
    
record1(1,"张三",98,"西安交通大学")
record1(5,"李四")    
#record(6) #error

Python是个脚本语言,所以没有什么main函数,他是从上往下执行的

python里面的全局变量和局部变量和别的语言还有些不太一样。

python的全局变量是所有函数之外定义的变量,他没法在函数内部用,就是不能对全局变量做修改,也不是不能修改,不过需要用global关键字,,全局变量能当给函数内部变量去赋值,用的是他的拷贝,他本身不能变

python的局部变量就是在函数内部或者代码块内的,外部不能用

TEMP=21

print("TEMP before=%d" %TEMP)

def fun():
    a=50  #局部变量
    print('a=',a)
    x=TEMP+60
    print('x=',x)
    a=TEMP
    print('new a=',a)
    return a+50

fun()
#print(a) #外部不能用局部变量

print(fun())
TEMP+=10
print("TEMP after=%d" %TEMP)

py里面全局变量习惯用大写表示,如果想在函数内部去修改全局变量,声明global

#py里面定义全局变量 习惯用大写去定义

TEMP=21

print("TEMP before=%d" %TEMP)

def fun():
    a=50  #局部变量
    print('a=',a)
    global TEMP #声明他是全局的
    TEMP=50
    return a+50

#print(a) #外部不能用局部变量
fun()
print("TEMP after=%d" %TEMP)

还有如果局部变量和全局变量名字一样,那么在函数内部用的是局部变量,局部变量会把全部变量隐藏掉,就跟c/c++一样局部的会把全局的隐藏

a=21

print("TEMP before=%d" %a)
def fun():
    a=50  #局部变量
    print('a=',a)
    return a+50

#print(a) #外部不能用局部变量
fun()
print(fun())
print("TEMP after=%d" %a)

大概就了解这些先,下面这个讲的比较详细 

 python的 局部变量和全局变量_python 局部变量_GeekCesto的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/497736.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

什么是事件驱动的微服务架构?

对于许多关键应用程序功能&#xff0c;包括流媒体和电子商务&#xff0c;单体架构已不再足够。随着实时事件数据和云服务使用的需求增加&#xff0c;许多现代应用程序&#xff0c;如Netflix和Lyft&#xff0c;已经转向了事件驱动的微服务方法。分离的微服务可以独立运行&#x…

体外诊断(IVD)高速发展

体外诊断&#xff08;IVD&#xff09;实际一直是临床的重要组成部分。体外诊断&#xff0c;是指通过对人体样本(血液、体液、组织等)进行检测而获取临床诊断信息&#xff0c;进而判断疾病或机体功能的产品和服务&#xff0c;其检测原理和方法涉及免疫学、微生物学、分子生物学等…

Cursor设置中文版 以及简单实用教程集成 GPT4 的代码神器 Cursor

官网&#xff1a;cursor.so 快捷键 ctrl K&#xff0c; 中英文提交需求&#xff0c;&#xff08;刚开始我整蹩脚的英语&#xff0c;后来发现支持中文&#xff09; 自动写代码 自动补充代码 自己修改代码 自动检查、完善代码 自己本地测试 然后再重复上面操作直到能用 最后让它…

ZooKeeper知识回顾(分布式协调框架,本质是分布式小文件存储系统,以分布式集群部署)

Apache ZooKeeperhttps://zookeeper.apache.org/官网为: 名字.apache.org 1.zookeep概念 一个团队里面&#xff0c;需要一个leader&#xff0c;leader是干嘛用的&#xff1f; &#xff08;分布式协调框架&#xff09; 1.管理什么的咱不说。 2.外面的人&#xff0c;想…

AI大神吴恩达与OpenAI官方合作推出的ChatGPT提示工程课,到底在讲什么?

ChatGPT提示工程课程&#xff0c;吴恩达&OpenAI 概述 本课程将着重介绍指令调优LM的开发最佳实践&#xff0c;以帮助开发人员利用LM技术构建聊天机器人等应用程序。 亮点 &#x1f4da; LM可用于快速构建软件应用程序&#xff0c;API可以使开发人员非常快速地构建。&#x…

怎么压缩照片到20k?

怎么压缩照片到20k&#xff1f;如今&#xff0c;手机摄影已经成为我们生活的一部分&#xff0c;我们经常使用手机拍照记录美好瞬间。但是&#xff0c;随着手机拍照像素的不断提高&#xff0c;照片的文件大小也越来越大&#xff0c;这使得手机的存储空间不够用&#xff0c;甚至在…

Vue核心 收集表单数据 过滤器

1.14. 收集表单数据 收集表单数据: 若: &#xff0c;则v-model收集的是value值&#xff0c;用户输入的就是value值。若: &#xff0c;则v-model收集的是value值&#xff0c;且要给标签配置value值。若: 没有配置input的value属性&#xff0c;那么收集的就是checked(勾选 or 未…

weblogic ssrf 漏洞复现

一.前言 Weblogic中存在一个SSRF漏洞&#xff0c;利用该漏洞可以发送任意HTTP请求&#xff0c;进而攻击内网中redis、fastcgi等脆弱组件。 二.环境搭建 在docker中开启环境 sudo docker-compose up -d sudo docker-compose ps #查看状态访问http://your-ip:7001/uddiexpl…

【C++】虚函数表 多态的原理 动态绑定和静态绑定

梳理虚函数表、多态原理、动静态绑定的知识 目录 一、虚函数表 二、多态的原理 三、动态绑定和静态绑定 一、虚函数表 在学习多态原理之前&#xff0c;我们需要了解一下虚函数表的概念 我们先一起来看下下面这段代码 // 这里常考一道笔试题&#xff1a;sizeof(Base)是多…

Centos7设置yum源

为什么要修改yum源呢&#xff1f; 因为默认的yum源下载速度很慢&#xff0c;所以我们需要修改yum源。我是用的阿里云的yum源 环境 虚拟机&#xff1a;VirtualBox 7.0.4 操作系统&#xff1a;CentOS 7 x86_64 查看默认的yum源 cd /etc/yum.repos.d将列出的所有默认yum源复…

unity愤怒的小鸟学习制作(一)

基础知识已经差不多了&#xff0c;现在开始模仿敲代码然后在模仿中熟悉软件和语法 视频链接和素材如下&#xff1a;视频 目录 第一部分&#xff1a;游戏逻辑1、新建2D工程2、创建三个场景3、导入游戏需要的资源4、开始编辑02-game4.1 裁切图片4.2 初步编辑4.3 实现小鸟的拖拽4…

【源码分析】从源码层面深度剖析Redisson实现分布式锁的原理

快速入门 引入redisson依赖 <dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.16.0</version> </dependency>编写测试代码 public class RedissonTest {private static RedissonC…

SubMain GhostDoc Enterprise v2022 Crack

GhostDoc 是一个 Visual Studio 扩展&#xff0c;适用于需要使用可自定义模板从源代码生成 XML 注释、维护干净和最新文档、生成多种格式的帮助文档、在 Visual Studio 中使用智能源代码拼写检查器等的开发人员. GhostDoc 还有助于自动生成干净、有用的干净代码文档&#xff0c…

scratch统计距离学校远近 中国电子学会图形化编程 少儿编程 scratch编程等级考试四级真题和答案解析2023年3月

目录 scratch统计距离学校远近 一、题目要求 1、准备工作 2、功能实现 二、案例分析

Elasticsearch:结合两全其美:Elasticsearch 与 BM25 和 HNSW 的混合搜索

就搜索算法而言&#xff0c;没有万能的解决方案。 不同的算法在不同的场景下效果更好&#xff0c;有时需要算法的组合才能达到最好的效果。 在 Elasticsearch 中&#xff0c;一种流行的组合搜索算法的方法是使用混合搜索&#xff0c;将用于文本搜索的 BM25 算法与用于最近邻搜索…

数据结构与算法十 并查集

一 并查集 并查集是一种树型的数据结构 &#xff0c;并查集可以高效地进行如下操作&#xff1a; 查询元素p和元素q是否属于同一组合并元素p和元素q所在的组 1.1 并查集结构 并查集也是一种树型结构&#xff0c;但这棵树跟我们之前讲的二叉树、红黑树、B树等都不一样&#xf…

【Stable Diffusion】基本概念之hypernetwork

1.基本概念 hypernetwork&#xff0c;中文名为超网络&#xff0c;是一种神经网络架构,它允许动态生成神经网络的参数(权重)。简而言之,hypernetwork可以生成其他神经网络。 在Stable Diffusion中,hypernetwork被用于动态生成分类器的参数&#xff0c;为Stable Diffusion模型添加…

牛客刷SQL题Day5

SQL69 返回产品并且按照价格排序 select prod_name , prod_price from Products where prod_price between 3 and 6 select prod_name , prod_price from Products where 6>prod_price and prod_price >3 踩坑1&#xff1a; between......and.......包括边界。 踩坑2&am…

ES6之箭头函数

文章目录 前言一、定义二、简化1.当函数参数只有一个时2.当函数体只有一条return语句时 三、注意1.箭头函数的this2.不能作为构造函数实例化对象3.不能使用argument变量 总结 前言 简单的讲&#xff0c;箭头函数是将原function关键字和函数名删掉的一种简写函数形式。 一、定义…

二维体光子晶体的平面波展开法代码

%书上的代码&#xff0c;和FEM符合的更好 %在这个代码里试着把单位原胞的相对介电常数分布画出来 %这个代码的单位原胞的中心就是(0,0)点&#xff0c;也就是坐标原点 %The program for the computation of the PhC photonic %band structure for 2D PhC. %Parameters of the st…