首页 > 编程语言 >Python入门基础

Python入门基础

时间:2022-09-26 19:35:15浏览次数:56  
标签:jason 入门 Python list 基础 print False 数据 name

今日类容详细

  • Python基本数据类型
  • 与用户交互
  • 格式化输出
  • 基本运算符
  • 多种赋值方式
  • 逻辑运算符
  • 成员运算符
  • 身份运算符

今日内容详细

基本数据类型之布尔值 BOOl

1.用来判断事物的对错是否可行,主要用于流程控制中
2.只有两种状态

   Ture   对的,可行的,真的
   False  错误的 不可行的,假的

3.python中所有数据值都自带布尔值

  布尔值为False的数据有:  0 None ''(空字符串),[空列表] {空字典}
  
  布尔值为True的数据有:除了以上的其他都是True

4.存储布尔值的变量名,一般推荐使用is作为开头

	eg:is_delete =False
	    is_alive = True

ps:很多程序中提供的注销账户的功能,其实在计算机的底层并没有删除数据,而是修改了数据的状态
image

基本数据类型之元组tuple

1.元组也称为“不可变”的列表

元组类索引绑定的值的内存地址不能修改

2.语法结构:小括号括起来,内部存放多个数据值、数据值与数据值之间用逗号隔开,数据值可以是任何数据类型
3.代码实现
 l1 = (11, 22, 33,‘Andy’)
 
4.元组与列表的对比

# 元组
l1 = (11, 22, 33)
print(l1[0])  # 用索引值0在列表取的值
l1[0] = 999  # 给变量名l1[0]换一个变量值
print(l1) # 最后的结果只会是保存
# 列表
# li = [11, 22, 'any']
# print(li[0])  # 11(用索引值0在列表取的值)
# li[0] = 999
# print(li)  # [999, 22, 'any']
5.元组内如果只有一个数据
    t1 = (1)
    t2 = (11.11)
    t3 = ('jason')
    print(type(t1), type(t2), type(t3))  # <class 'int'> <class 'float'> <class 'str'>

   t1 = (1,)
   t2 = (11.22,)
   t3 = ('andy',)
   print(tpye(t1),type(t2),type(t3))  # # <class 'tuple'> <class 'tuple'> <class 'tuple'>
   
   """ps:以后在使用可以存放多个数据值的数据类型时,如果里面暂时只有一个数据值时,那么建议 你加上逗号"""

image

数据类型之集合set

1.集合只能用于去重,和关系运算
2.集合内数据只能是不可变类型
3.语法结构:大括号括起来,内部存放多个数据值,数据值与数据值之间用逗号隔开,数据值不是K:V键值对
代码实现
li ={1, 2, 3, 4, 5, 6, 7, 8, 9}
定义空集合与空字典
   	{}   默认是字典
   	set()定义空集合

与用户交互

1.在以前到商场购买东西,需要到柜台去和收银员进行一些列的交流最后结账的这个过程就是人与人之间的交互
后来随着科技的发达出现了自动结账的机器代替了收银员与我们进行交互

2.获取用户输入的信息、
   input
   #获取用户输入
   username= input(请输入您的用户名>>>:)
   '''
   1.先执行input获取用户名输入
   2.将输入的数据绑定给一个变量名username
   3.以后就可以在程序中反复使用该变量名来调用该用户的数据
   
   PS:input获取到的数据都会统一处理成字符串类型
输出内信息部
	1.print
              括号内既可以放数据值也可以放变量名,并且支持多个逗号隔开即可
	2.print自带换行模式
		换行符:\r\n,\n(斜杠与字母组合到一起可能会产生一些特殊的含义)
	3.print也可以切换结束符
		print(数据,end=‘默认是\n’)

拓展小知识:
	 Python2与Python3中两个关键字的区别
		Python2
		input方法需要用户自己提前指定数据类型,写什么类型就是什么类型
		aw_input
		raw_input方法与Python3中input一致,输入的统一处理成字符串
		Python2中
		print的方法有两种
		print 数据值
		print(数据值)


image

格式化输出

提前定义好一些内容,将来在需要的时候,可以进行局部的修改然后来进行使用
eg;合同,奖状,

	代码的实现
	 在现实生活中大部分的情况下使用下划线提示别人需要填写的内容。
	 但是在程序中则需要使用占位符:%s %d
	 info=‘%s同志你好’
	 '''单个占位符'''
	 两种写法:
	print(info % 'Jason')  # Jason同志你好
	print('%s同志你好' % 'Tony')  # Tony同志你好
	print(info % ('jason',))
	print('%s同志你好' % ('Tony',))
	
'''多个占位符'''
	desc = '姓名:%s 年龄:%s 爱好:%s'
	print(desc % ('jason', 18, 'read'))
	print('姓名:%s 年龄:%s 爱好:%s' % ('tony', 28, 'rap'))
	
'''注意事项:有几个占位符就需要几个数据值'''
	print('my name is %s my age is %s' % ('jason',))  # 少了不行
	print('my name is %s my age is %s' % ('jason', 18, 'read'))  # 多了不行
	
'''不同占位符的区别'''
	demo1 = '%s您好 您本月的话费是%s 余额是%s'  # %s常见数据类型都支持
	print(demo1 % ('jason', 100, 10000000000000))
	
	demo2 = '%d您好 您本月的话费是%d 余额是%d'  # %d只支持数字类型
	print(demo2 % ('tony', 1000000000, -100000))


print(‘%08d’%1234)# 00001234  (%08代表着%占了8位数,如果输出的数字不够就用0来代替)
print(‘%08d’%123456789) # 1234566789
           %08d虽然会占位置但是如果输出的数字位数多余占位也不会管它

image

基本运算符

1.数学运算符
    - * / % // **
    简化写法
    n = 10
    n += 1  # n = n + 1
    n -= 1  # n = n - 1
    n *= 1  # n = n * 1
    n /= 1  # n = n / 1
    n %= 1  # n = n % 1
    n //= 1  # n = n // 1
    n **= 1  # n = n ** 1

2.比较运算符
   < > <= >=  ==(等于) !=(不等于)

常用赋值符

1.链式赋值
name = 'jason'
   name1 = name
   name2 = name
   链式赋值
   name = name1 = name2 = 'jason'
2.交叉赋值
   让m和n互相转换绑定的值
    m = 100
   n = 99
   m = n       错误书写方式
   n = m
   print(m, n)  # 999 999


方式1:采用中间变量
    temp = m
    m = n
    n = temp
    print(m, n)  # 999 100
    
   方式2:交叉赋值语法
   m, n = n, m
   print(m, n)  # 999 100

image

解压赋值
       low的写法
name_list = ['jason', 'kevin', 'tony', 'oscar']
		= name_list[3]
	low的写法'''
     name1 = name_list[0]
     name2 = name_list[1]
     name3 = name_list[2]
     name4 = name_list[3]
	     解压赋值语法
     name1, name2, name3, name4 = name_list
    '''**解压赋值在使用的时候 正常情况下需要保证左边的变量名与右边的数据值个数一致**'''
     a, b = name_list  # 变量名少了不行
	 a, b, c, d, e = name_list  # 变量名多了也不行
	**当需要解压的数据个数特别多 并且我们只需要使用其中的几个 那么可以打破上述的规则**
	a, *b = name_list  # *会自动接收多余的数据 组织成列表赋值给后面的变量名
	print(a)  # jason
    print(b)  # ['kevin', 'tony', 'oscar']
当数据值不准备使用的时候 可以使用下划线作为变量名绑定
		a, *_, c = name_list

image

逻辑运算符

主要配合条件一起使用 (and or not)

and

可以对符号两侧的表达式进行与运算,它的两侧表达式的计算结果可以是 bool 类型,也可以是数字或者字符串。而且链接的多个条件必须都是成立的,结果才会成立

      print(1>2 and 2<3)  #  False
   	print(2<3 and 11)  # 11
   	print(1<2 and 2<3)  #Ture
   	print(1 and 1<2)  #Ture

or

可以链接多个条件,但只要器中有一个条件成立,结果就为成立

  print(1<2 or 2<3)  #True
  print(1<3 or 3>3) # False
  print(10 or 10>9) #10
  print(0 or 1)  # 1
  Print(0 or False) # False
  

image

not

结果只有 True 和 False (取反,类似于说反话)

1.非运算会对其数据值取反操作,True 变 False,False 变 True。
2.字符串,有内容为True,空字符串为 False 。
3.数字,0 为 False ,其它 为 True 。

PS:三者混合使用的时候有优先级之分 但是我们不需要记忆优先级 应该通过代码的形式提前规定好优先级
eg: 通常在数学运算中都是先乘除有加减 但是可以使用括号来改变优先级

(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)

成员运算符

判断一个个体在不在一个群体内


	ame_list = ['jason', 'kevin', 'oscar', 'jerry']
	print('tony' in name_list)  # False
	print('tony' not in name_list)  # True
	print('j' in name_list)  # False 列表最小单位是数据值  不能再细分
	s1 = 'hello world'
	print('d' in s1)  # Ture 字符串最小单位是单个单个的字符
	
	d1 = {
		  'username': 'jason',
		  'pwd': 123
	}
	print('jason' in d1)  # False 字典成员运算只有键参与
	print('username' in d1)  # True      'username' 'pwd'
	

身份运算符

id() 返回一串数字 该数字可以看成是内存地址

表示方式有两种:

	is  判断内存地址是否相同
	==  判断数据值是否相同
	
	l1 = [11, 22, 33, 44, 55, 66, 77, 88]
	 l2 = [11, 22, 33, 44, 55, 66, 77, 88]
	 print(l1 == l2)  # True
	 print(id(l1))
	 print(id(l2))
	 print(l1 is l2)  # False

	 小整数池
	i1 = 11
	i2 = 11
	print(i1 is i2) # Ture


s1 = 'jason jason jason'
s2 = 'jason jason jason'
print(s1 is s2)
不同的环境下可能优化的程度不一样 

相同的内存地址,值肯定相同
值相同,内存地址不一定相同

image

标签:jason,入门,Python,list,基础,print,False,数据,name
From: https://www.cnblogs.com/qiguanfusu/p/16732085.html

相关文章

  • 学习python-Day64
    回顾补充知识http请求应用层:基于tcp/ip之上是进行网络传输,广泛用于前后端的交互请求协议:请求首行请求方式:get、post,请求地址:get携带数据,请求协议,请求版本......
  • python语法和运算符
    今日内容总结基础数据类型基本数据类型之布尔值bool什么是布尔值用来判断事物的对错是否可行只要用于流程控制中的逻辑判断布尔值的状态只有两种状态 1.True 对的......
  • 不带行交换的Guass消去法,python实现
    importnumpyasnp#合并A、b,增广矩阵ABclassgauss:def__init__(self,A:list,b_T:list):''':paramA:矩阵A,n*n:paramb_......
  • Python数据类型+运算符
    Python基础数据类型上期练习讲解#练习一.想办法打印出jasonl1=[11,22,'kevin',['tony','jerry',[123,456,'jason']]]#解题思路,先看列表中有几个数......
  • Python采集《惊奇先生》, 下载你想看的高质量漫画
    前言大家早好、午好、晚好吖~知识点:爬虫基本流程保存海量漫画数据requests的使用base64解码开发环境:版本:python3.8编辑器:pycharmrequests:......
  • Flask学习笔记(三)-jinja2 模板入门
    一、表达式jinja2是一个被广泛使用的模板引擎,其设计思想源自于django模板引擎,jinja2扩展了语法,增加了强大的功能,被flask选为内置的模板语言示例的目录结构如下./├─......
  • python进阶之路4
    内容回顾PEP8规范代码编写规范及美观python注释语法平时养成写注释的习惯 1.警号 2.三个单引号 3.三个双引号常量与变量1.变量语法结构 变量名......
  • 【Java基础】内部类
    1.内部类在一个类的内部再定义一个类,内部类和外部类名字不能相同。可以分为成员内部类:静态、非静态局部内部类:方法内、代码块内、构造器内,匿名内部类2.成员内部类(1......
  • 网络流入门学习笔记
    基本概念网络流,即网络+流网络就是由许多结点和边组成的图,在这里边权表示允许通过的最大流量在网络中,有两个特殊的结点,一个叫源点,一个叫汇点网络流中最大流问题可以看成......
  • python -day4
    python-day4目录python-day4python作业讲解基本数据类型布尔值bool基本数据类型元组tuple基本数据类型集合set用户交互格式化输出基本运算符常用赋值符逻辑运算符成员运......