Python学习记录_python专业学习记录-程序员宅基地

技术标签: python  开发语言  

Python

Day1:基础语法

字面量

Python中常用有六种数据类型,分别是数字(分为整数,浮点数,布尔,复数)int float complex bool

字符串,列表,元组,集合,字典

字符串:String —>“”

注释

单行注释#开头

多行注释:以一对双引号 “”

变量

变量 = 数据
print("--",变量名)

数据类型

验证数据类型:type()

print(type(数据))# 输出数据类型

数据类型转换

int(x)# 将x转换成int型
float(x)
str(x)

此函数为具体值,可直接输出,也可赋予变量

注意,float转换int会丧失精度

字符串只有数字才能转换为整数

运算符

与java相同,+ - * /

**//取整余,%取余,***指数

字符串拓展

在Python中有三种定义字符串 ‘n’ “n” “”“n“”

三引号字符串和注释一样,区别在于有无变量接受

字符串中有引号可用\或单双引号

两个单独的字符串可用+进行拼接

字符串不能用+与整数或浮点数进行拼接

---------------------------------------------------------------------------------------------------------------------------------

%s进行占位,%为占位符,s为字符串类型。具体代码演示如下

class_num = 57
avg_salary = 16751
messsage = "%s %s"%(class_num,avg_salary)

%d为整数占位

%f为浮点数占位

字符串格式化精度控制

常用m.n控制精度

实例

%5d:表示将整数的宽度控制在5位,如果数字11,被设置成5d,就会变成 空格 空格 空格11

%5.2f:表示将宽度控制在5,小数点精度设置为2

如果m比数字本身宽度还要小,m会不生效

快速格式化方式

语法:f“内容{变量}”

name = "刘宇晗"
print(f"我是{
      name}")

没有类型

无法做精度控制

字符串格式化

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wezIxqhH-1678543518678)(C:\Users\34844\AppData\Roaming\Typora\typora-user-images\image-20230310223927693.png)]

表达式格式化

无需用变量存储数据时,使用表达式格式化进行输出

数据输入

input语句输入,代码表示:

name = input()
print("我是:%s" % name)

input()语句可以直接在输入内容前输出提示内容的

input()括号中直接填入内容即可

获取到的数据永远是字符串类型

判断语句:bool 和 比较运算符

和java与CPP基本相同

判断语句:if函数

代码演示

age = 30
if age >= 18:
	print("have been a adult")# 需缩进限定范围
print("haven't been a dault")#无缩进不受if函数控制

if else:

if 条件:
	执行
else :
	执行

if elif:

if 条件1:
	语句--
elif 条件2:
	语句2--
   .........

类似switch case

while循环

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dgzNQG9Z-1678543518679)(C:\Users\34844\AppData\Roaming\Typora\typora-user-images\image-20230310220435522.png)]

i = 0
while i <50:
    print(f"cnm",i)
    i += 1

求1-100的和

i = 1
sum = 0
while i <=100:
    sum += i
    i += 1
print(sum)

猜数字小游戏

import random
i = random.randint(1, 100)
flag = True
while flag:
    a = int(input("inset number"))
    if a == i:
        print("right")
        flag = False
    else:
        if a < i:
            print("smaller")
        else:
            print("right")
            flag = False

原始字符串r/R

原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。

通过负数索引值截取

list = ['Google', 'Runoob', "Zhihu", "Taobao", "Wiki"]

# 读取第二位
print("list[1]: ", list[1])
print ("list[1:-2]: ", list[1:-1])

删除列表元素

list = ['Google', 'Runoob', 1997, 2000]
 
print ("原始列表 : ", list)
del list[2]
print ("删除第三个元素 : ", list)

Python列表截取与拼接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iGVnBewU-1678543518679)(C:\Users\34844\AppData\Roaming\Typora\typora-user-images\image-20230311142603193.png)]

嵌套列表

>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'

列表比较

列表比较需要引入 operator 模块的 eq 方法(详见:Python operator 模块):

列表比较需要引入 operator 模块的 eq 方法(详见:Python operator 模块):

# 导入 operator 模块
import operator

a = [1, 2]
b = [2, 3]
c = [2, 3]
print("operator.eq(a,b): ", operator.eq(a,b))
print("operator.eq(c,b): ", operator.eq(c,b))

元组

和列表相似,元组元素不能修改

>>> tup1 = ('Google', 'Runoob', 1997, 2000)
>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup3 = "a", "b", "c", "d"   #  不需要括号也可以
>>> type(tup3)

其余操作与数组一致

字典

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G7ZZxQcN-1678543518679)(C:\Users\34844\AppData\Roaming\Typora\typora-user-images\image-20230311144328630.png)]

删除

tinydict = {
    'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
del tinydict['Name'] # 删除键 'Name'
tinydict.clear()     # 清空字典
del tinydict         # 删除字典
 
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])

修改

tinydict = {
    'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
tinydict['Age'] = 8               # 更新 Age
tinydict['School'] = "菜鸟教程"  # 添加信息
 
 
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])

访问

tinydict = {
    'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])

集合

无序不重复的元素序列

>>> basket = {
    'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket)                      # 这里演示的是去重功能
{
    'orange', 'banana', 'pear', 'apple'}
>>> 'orange' in basket                 # 快速判断元素是否在集合内
True
>>> 'crabgrass' in basket
False

>>> # 下面展示两个集合间的运算.
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a                                  
{
    'a', 'r', 'b', 'c', 'd'}
>>> a - b                              # 集合a中包含而集合b中不包含的元素
{
    'r', 'd', 'b'}
>>> a | b                              # 集合a或b中包含的所有元素
{
    'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a & b                              # 集合a和b中都包含了的元素
{
    'a', 'c'}
>>> a ^ b                              # 不同时包含于a和b的元素
{
    'r', 'd', 'b', 'm', 'z', 'l'}

c’, ‘d’}

a - b # 集合a中包含而集合b中不包含的元素
{‘r’, ‘d’, ‘b’}
a | b # 集合a或b中包含的所有元素
{‘a’, ‘c’, ‘r’, ‘d’, ‘b’, ‘m’, ‘z’, ‘l’}
a & b # 集合a和b中都包含了的元素
{‘a’, ‘c’}
a ^ b # 不同时包含于a和b的元素
{‘r’, ‘d’, ‘b’, ‘m’, ‘z’, ‘l’}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_65328295/article/details/129469632

智能推荐

SBEC016智能电池管理方案-程序员宅基地

文章浏览阅读1.3k次。SBEC016智能电池管理方案功能说明1、 SBEC016方案控制芯片采用Atmel AVR系列芯片,低功耗,工作稳定 2、 支持19V/4.5A DC输入3、 输出电压包含12V/6A 、5.1V/0.5A(5V standby )、5.1V/6.5A4、 支持双电池,选用电池符合智能电池规格(SBS V1.1)5、 支持2S1P~4S2P电池,通过修改EC参数实现,更换电池串并数无需修改硬件6、 系统关机及无DC输出时,EC可以进行休眠模式,达到最省电待机状态7、 Windows或lin_电池管理方案

oracle12c不能进入到http://localhost:1158/em的解决办法_oracle12 访问http-程序员宅基地

文章浏览阅读2.8k次。oracle12c的em经过精简,比11g小 很多,登陆方式也发生了变化,原来的http://localhost:1158/em或者https://localhost:1158/em登陆总是会遇到问题,解决方法需要使用到XDB,需要设置一下端口。先连接上Copyright (c) 1982, 2014, Oracle. All rights reserved.请输入用户名_oracle12 访问http

HikariPool-1 - Connection is not available, request timed out after,springboot如何设置连接池大小-程序员宅基地

文章浏览阅读2.6k次。问题描述项目压测的时候一直报错HikariPool-1 - Connection is not available, request timed out after解决方案在yml中配置如下参数hikari: connection-timeout: 60000 idle-timeout: 60000 login-timeout: 5 max-lifetime: 60000 maximum-pool-size: 400 mi

java怎么调用其他包里的类_java怎么调用另一个包中的类-程序员宅基地

文章浏览阅读5.2k次。比如现在有以下两个包:现在想在Boss类里面实现对Employee的调用,怎么做呢?(视频教程推荐:java视频)Employee.java:package payroll2;public class Employee {public void move(){System.out.print("this is employee");}}如果想实现对包的调用,可使用import关键字,然后再用调用类..._java调用其他包的静态类

Linux相关知识-程序员宅基地

文章浏览阅读76次。运行级别 0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动运行运行级别 1:单用户工作状态,root权限,用于系统维护,找回丢失root密码,禁止远程登陆运行级别 2:多用户状态没有网络服务(没有NFS)运行级别 3:多用户状态有网络服务(有NFS),登陆后进入控制台命令行模式运行级别 4:系统未使用保留给用户运行级别 5:图形界面运行级别 6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动常用运行级别是3和5,工作中一般用3,也可以指定默认运行级别。_linux相关

使用S32DS集成S32K的MCAL_s32ds教程-程序员宅基地

文章浏览阅读4.7k次,点赞9次,收藏67次。一、软件准备前往恩智浦官网下载MCAL软件包、EB Tresos 、以及S32DS IDE:以下软件均有NXP免费提供,但需注册账号获取S32DS IDE下载EB Tresos以及MCAL下载S32DS版本为:S32 Design Studio 3.2其中EB Tresos版本为:24.0MCAL版本为:S32K14X_MCAL4_2_RTM_1_0_0​NXP MCAL软件包后缀说明:HF为补丁版本 RTMC为发布版本软件安装请参考:NXP_AUT.._s32ds教程

随便推点

【GIS开发】Leaflet入门学习(Javascript库)_leaflet.js教程-程序员宅基地

文章浏览阅读7.3k次,点赞38次,收藏162次。文章目录1、简介2、快速入门3、功能3.1 标记( Markers)3.2 矢量图层( Vector Layers)3.3 事件处理( Event Handling)后记JavaScript library for mobile-friendly interactive maps1、简介https://github.com/Leaflet/Leaflethttps://leafletjs.com/SlavaUkraini/index.htmlLeaflet.js是一个开源库,使用它我们可以部_leaflet.js教程

黑马点评项目问题总结-程序员宅基地

文章浏览阅读2.8k次,点赞6次,收藏36次。点评项目面试版_黑马点评

mysql更改数据库所有者_SQL Server中修改数据库所有者的2种方法-程序员宅基地

文章浏览阅读1.1k次。在MS SQL SERVER中,我们有时候会碰到下面这种数据库,所有者是登录数据库的用户,如下图,但我们却没有办法直接在数据库管理工具中直接修改数据库所有者。这样会给我们后继的一些操作带来不便,至少对MitchellChu我来说是非常不便的,因为我后继想对登录用户的权限做些限制,因此需要寻求数据库所有者的修改办法。修改数据库所有者的方法有两种:一种老方法,一种新方法 ——当然,都是在SQL语句中操..._更改相应数据库的所有者

CTF学习经验分享(Web方向)_ctf web题 local access hacker-程序员宅基地

文章浏览阅读5.3k次,点赞9次,收藏85次。本人Web安全初学者,记录分享一下学习历程,推荐评价仅代表个人观点,不足之处欢迎各位表哥指正……CTF基础知识:分类: 基础知识 | CTFHubEnjoy your's CTFhttps://writeup.ctfhub.com/categories/Skill/%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/CTFHub这里讲得很全面了……题目类型、比赛模式都有学习视频: 1. i春秋渗透测试工程师就业班-基础篇vm和L..._ctf web题 local access hacker

[译]使用BeautifulSoup和Python从网页中提取文本-程序员宅基地

文章浏览阅读1k次。如果您要花时间浏览网页,您可能遇到的一项任务就是从HTML中删除可见的文本内容。如果您使用的是Python,我们可以使用BeautifulSoup来完成此任务。设置提取首先,我们需要获取一些HTML。我将使用Troy Hunt最近关于“Collection#1”Data Breach的博客文章。以下是您下载HTML的方法:import requestsurl = 'https..._beautifusoup提取汉字

mac下idea tomcat不能debug、不能进断点_mac idea2023.2.4不能一步步debug-程序员宅基地

文章浏览阅读1.9k次。一开始发现mac的idea点debug一直没有反应,以为卡了后来发现在tomcat的配置里面有一个变量,在run的里面是没有的。 debug的位置有一个socket的,可能连不上,尝试把他的变量删了,然后居然可以运行了。。。但是发现了新的问题,不能进入断点。= =之后在网上探索,只找到了一个类似的,还是tomcat5代的时候。。。惊了答案在不经意间解决了。。新建了一个tomcat8 就好..._mac idea2023.2.4不能一步步debug