python基础知识

搭配

python环境 + 编辑器pycharm/sublime/geany/vscode

python环境:原装环境 / anaconda(集成python环境)

解释型语言和编译型语言

解释型语言: 需要用到编译器,python.exe php.exe  跨平台性,有环境就能运行
编译型语言: 需要先对源码进行编译,预编译->编译->汇编->链接  编译之后再运行就不需要再重新编译 

注释

单行注释  #
多行注释  '''   '''    """   """

pycharm快捷键

快速注释 ctrl+/
快速复制 ctrl+D
快速删除 ctrl+Y
快速调到某行 ctrl+G
跳到开头 ctrl+[
跳到结尾 ctrl+]

print打印函数

print(123)
print('hello world')

变量

name = 'xiaoming'
print(name)
print('标识、内存地址', id(name))   #id函数,输出name这个变量在内存中的地址
print('类型', type(name))      #type函数,输出name这个变量的类型

变量的多次赋值

name = 'xiaoming'
print(id(name))
name = 'xiaohong'
print(id(name))             #变量的值改变,内存地址会随之改变

整数类型

n1 = 90
n2 = -70
n3 = 0
print(n1, type(n1))
print(n2, type(n2))
print(n3, type(n3))

整数可以表示为二进制,八进制,十进制,十六进制 默认十进制

print('十进制', 123)
print('二进制', 0b010101010)      #二进制数0b开头
print('八进制', 0o123)            #八进制数0o开头
print('十六进制', 0xABC)           #十六进制数0x开头

输出的时候会转换成十进制

浮点类型

a = 3.1415926
print(a, type(a))


n1 = 1.1
n2 = 2.2
n3 = 2.1
print(n1 + n2)  # 浮点数相加可能不精确,python的bug
print(n1 + n3)

怎么解决浮点数相加问题呢?
from decimal import Decimal
print(Decimal('1.1') + Decimal('2.2'))

布尔类型

f1 = True   #注意大写
f2 = False    #注意大写
print(f1, type(f1))
print(f2, type(f2))

布尔类型可以做整数计算

print(f1 + 1)
print(f2 + 1)

字符串类型

str1 = '阿珍爱上了阿强'        #可以用单引号
str2 = "阿珍爱上了阿强"        #可以用双引号
str3 = '''阿珍爱上了阿强         #也可用三引号,三引号可以直接换行,但单双引号换行会有连接符
在一个寂寞的夜晚'''


str4 = """阿珍爱上了阿强  
在一个寂寞的夜晚"""                #也可以用三个双引号    
print(str1,type(str1))
print(str2,type(str2))
print(str3,type(str3))
print(str4,type(str4))

 

格式化输出

print('%s' % '你好')
print('%d' % 100)
print('%o' % 100)   # 输出100的8进制数
print('%x' % 100)   # 输出100的16进制
print('%f' % 1.1)   # 浮点数,默认保留6位小数
print('%.3f' % 1.1)   # 浮点数,设置保留3位小数
print('%e' % 100000)    # 科学记数法
print('%.3e' % 11111.11111) # 取3位小数,科学记数法
print('%g' % 1111.1111) # 默认6位有效数字(一共,包括小数点前)
print('%.7g' % 1111.1111) # 设置7位有效数字(同上)

format() 把字符串当做一个模板,通过传入的参数进行格式化

前面两个花括号对应后面的的字符串

print('{} {}'.format('hello', 'world'))  # 不带索引,默认hello索引为0,world索引为1,注意format前面有一个.
print('{1} {0}'.format('hello', 'world'))  # 带数字索引,world输出在hello前面
print('{1} {0} {1}'.format('hello', 'world'))  # 带数字索引
print('{b} {a}'.format(a='hello', b='world'))  # 带字符索引

print(f'{变量名}')

a = 10
b = 20
print(f'{a}  {b}')
print(f'我今年{b}岁')

转义字符 

\n 换行 newline

print('hello\nworld')

\t 水平制表符 table

print('hello\tworld')
print('helloo\tworld')
print('hellooo\tworld')
print('helloooo\tworld')

每四个字符当做一个范围,没满就帮你补空格,满了就再给你四个格

\r 将光标的位置回退到\r的位置 return

print('hello\rworld')

常用在显示倒计时

import time
for i in range(10):
print("\r离程序退出还剩%s秒" % (9-i), end="")
time.sleep(1)               #因为程序运行很快,所以需要休眠语句

\b 退格 backspace

print('hello\bworld') //把前一个字符吞掉,hello的o没咯


\\ -> \     \' -> '     \" -> "

print('老师说:\'大家好\'')     //想输出\ ' " 前面要再加一个\

原字符,不希望字符串中的转义字符起作用,在字符串前面加上r或R

print(r'hello\nwolrd')    #\n不会解码

print()输出函数

print()函数,默认结尾会加上一个\n换行符——>  end='\n'  ,同时sep='  '表示输出多个参数的时候,中间会有空格,end 和 sep我们可以自己更改但注意!最好不要再builtins.py文件里面修改,因为会成为全局变量,最好是针对具体的print函数使用 

a = "人生苦短"
b = "我学Python"
print(a, end='-')
print(b)
print(a, b, sep='!')

input()输入函数

注意:输入函数接收到的数据都是str类型,字符串
name = input("your name: ")
print(name)
print(type(name))

 

数据类型转换

str() 将其它类型转换成str类型

a = 10
b = 10.8
c = False
print(str(a), str(b), str(c))
print(type(str(a)), type(str(b)), type(str(c)))

int() 将其他数据类型转换成int类型

a = '10'
b = 'abc' # 如果不符合数字的格式,字符串无法转换为证书
c = 12.3    # 保留整数部分
d = True
e = '12.3'  # 报错
print(int(a), int(c), int(d))

float() 将其它数据类型转换成float类型

a = '10'
b = 10
c = True
d = '12.3'
print(float(a), float(b), float(c), float(d))

print(type(repr(1)))    # 将表达式转换为字符串

print(eval("1+1"))  # 将字符串中的代码进行解析

print(chr(65))  # chr()将一个整数转换成一个unicode字符
print(ord('A')) # ord()将一个字符转换为它的ASCII整数值

进制转换

print(hex(10))  # hex()转换为十六进制
print(oct(8))   # oct()转换为八进制
print(bin(2))   # bin()转换为二进制

算术运算符:() + - * / %

print(4 ** 3)   #输出4的3次方
print(9 // 5)     #取整

复合赋值运算符 += -= /= .....

c = 0
c += 1  # c = c + 1
print(c)

比较运算符:结果为布尔类型 True False

print(1 == '1')    # python没有全等和非全等的概念

逻辑运算符 与或非 and or not

print(1 == 2 and 2 == 2)
print(1 == 2 or 2 == 2)
print(not 1 == 1)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值