####################################print函数################################
# 可以输出数字 字符串 表达式
print(1)
print('hello world')
print(2+1)
#将数据输出到文件中
# 注意点:
# 1.E盘必须存在 2.使用file=ft 才可以讲hello world写进txt文件中
ft=open('E:/TEXT.TXT','a+') # a+ 如果文件不存在就创建,存在就在文件内的后面继续追加
print('helloworld',file=ft)
ft.close()
#不进行换行输出(输出内容在一行当中)
print('hello','world','Python')
###################################转义字符与原字符##################################
#转移字符
print('hello\nworld')
###\n(换行) \t(增加一个字节) \r(增加一个字节)(后面的字符覆盖前面的字符) \b(退一个格)
#原字符,不希望字符串中的转移字符起作用,就使用原字符,就是在字符串之前加上r或者R
#注意事项 最后一个字符不能是反斜杠 但是可以是两个
print(r'hello\nworld\\')
print(r'hello\nworld')
#################################二进制与字符编码###################################
#二进制表达
print(chr(0b00111001011000))
#十进制表达
print(ord('乘'))
#######################python的标识符和保留字################################
#python的保留字
import keyword
print(keyword.kwlist)
#变量、函数、类、模块和其他对象起的名字叫做标识符
#规则:
#1 字母、数字、下划线
#2 不能以数字开头
#3 不能是保留字
#4 严格区分大小写
##############################变量##################################
#变量组成:
#标识: 表示对象所存储的内存地址,使用内置函数id(obj)来获取
#类型:表示对象的数据类型,使用内置函数type(obj)来获取
#值:表示对象所存储的具体数据,使用print(obj)可以将值进行打印输出
name='张三'
print(name)
print('标识',id(name))
print('类型',type(name))
print('值',name)
################################变量的多次赋值##################################
#多次赋值以后,变量名会指向新的空间
name='玛利亚'
name='楚楚'
################################python中常见的数据类型##################################
#整数类型→int→98
#浮点数类型→float→3.14159
#布尔类型→bool→True,false
#字符串类型→str→'人生苦短'
################################数据类型-整数类型##################################
#可表示正数、负数、和零
#不同表示方式:
#十进制 -> 默认的进制
#二进制 -> 以0b开头
#八进制 -> 以0o开头
#十六进制 -> 以0x开头
################################数据类型-布尔类型##################################
#true=1 false=0
################################数据类型-字符串类型##################################
#字符串称为不可变的字符序列
#可使用单引号 双引号 三引号 或者""" """来定义
#单引号 和双引号 定义的字符串必须在一行
#三引号定义的字符串可以分布在连续的多行
################################类型转换-str() 函数与int()函数##################################
name='张三'
age=22
print(type(name),type(age))#说明name与age的数据类型不相同
#print('我叫'+name+',今年'+age+'岁') #当str与int类型进行连接时 报错 解决方案 进行类型转换
print('我叫'+name+',今年'+str(age)+'岁')
#str() 函数:将其他类型转化为str类型
#int() 函数:将其他类性转化为int类型 注意:字符串转化为整数的时候 必须是整数串 否则报错
################################类型转换-float() 函数##################################
#float() 函数: 将其他类型转化为float类型 注意:字符串转化为浮点类型的时候 必须是数字串 否则报错
################################注释##################################
#单行注释 -> 以#开头,直到换行结束
#多行注释 -> 并没有单独的多行注释标记,将一对三引号之间的代码称为多行注释
#中文编码声明注释 -> 在文件开头加上中文声明注释,用以指定源码文件的编码格式
# #coding:gbk
################################input函数的使用(高级使用)##################################
#输入函数input()
present=input('大圣想要什么礼物?')
print(present,type(present))
#练习:从键盘输入两个整数,计算两个整数的和
a=input("请输入第一个数字")
a=int(a)
b=input("请输入第二个数字")
b=int(b)
print(a+b)
###################################解包赋值#########################################
a,b=10,20
print(a,b)
###################################运算符#########################################
a,b=10,20
'''
一个= 称为赋值运算符 ,== 比较运算符
一个变量由三部分组成,标识,类型,值
==比较的是值
比较对象的标识使用 is
'''
a=10
b=10
print(a==b) #True 说明a与b的value相等
print(a is b) #True 说明a与b的id标识相等
lst1=[11,22,33,44]
lst2=[11,22,33,44]
print(lst1 == lst2) #True 说明a与b的value相等
print(lst1 is lst2) #False 说明a与b的id标识不相等
print(a is not b) #False #a的id与b的 id 是不相等的
print(lst1 is not lst2) #true
###################################位运算符#########################################
#位与 & 对应数为都是1 结果数为才为1 否则为0
#位或 | 对应数为都是0 结果数为才是0 否则为1
#左移位运算符 << 高位溢出舍弃 低位补0 左边高位 右边低位
#右移位运算符 >> 低位溢出舍弃 高位补0
print(4&8)
print(4<<2)
#优先级
#算术运算符<位运算符<比较运算符<布尔运算符<赋值运算符