Python输入输出、数据类型

Python 输入输出

print()

print()后可跟任何类型变量。字符串用单引号,用逗号分割参数,在输出时参数之间用空格隔开。结果会自动换行。
如果不想换行,则在后面定义一个end参数,如:

1
print('hello world', end = '')

input()

接受输入,以回车键结束。默认返回值是字符串,如果需要数字或者将输入来进行数学运算运算的话需要强制类型转换,如:

1
x = int(input('input something...'))

其中,括号中参数是输入的提示语。

#和’’’还有”””

是注释符号,用它开头的代码不会没执行。
多行语句注释使用三个单引号(‘’’)或者三个双引号(“””)。

type(变量名)

查看变量的数据类型,如:

1
type(a)

Python 格式化输出

format()

格式化输出如下:

1
2
a = 'kitty'
print('hello, {}'.format(a))

输出:hello,kitty

又如:

1
2
3
b = 25
c = '中国人'
print('我今年{}岁,我是{}'.format(b, c))

输出:我今年25岁,我是中国人

保留两位小数的输出如下:

1
2
c = 0.345
print(‘c保留两位小数是:{:.2f}’.format(c))

输出:c保留两位小数是0.34

基本语法规则:缩进

缩进使用四个空格,凡是语句块都要使用缩进,常见语句块有:函数定义(def)、对象定义、判断语句(if)、循环语句(for),如:

1
2
if x == 1:
print('x=1')

又如函数定义:
def add():
a = int(input(‘a’))
b = int(input(‘b’))
return a + b

基本语法规则–操作符

算术运算符:+, -, *, /, //(整除),%,**(乘方)

比较运算符:>,<,>=,==,!=

逻辑运算符:or,and,not(取反)

如:

1
2
if a > 0 or b < 1:
print('ok')

​ 又如:

1
2
if a > 0 and b < 1:
print('ok')

而不是(&&或者||)

​ 取反,代码如下:

1
2
if not a:
do_something()

赋值运算符:=,+=(a = a + anything),%=,-=

成员运算符:in,not in,如:

1
2
if 'hello' in 'hello world':
print('True')

Python变量命名规范

普通变量

​ 全部小写,以下划线()或者字母开头,单词与单词之间以下划线(\)分隔

函数名

​ 全部小写,单词与单词之间以下划线(_)分隔

类名

​ 每个单词首字母大写,单词与单词之间自然连接

数据类型

Python3的标准数据类型

Number:数字(不可变)

String:字符串(不可变)

List:列表 (不区分数据类型,啥都能装。可以理解成一个大的容器,可以放所有其他数据类型

​ Tuple:元组(不能接受元素的修改,是一个不可变的数据类型

​ Set:集合(无序列表,其中元素永不重复

Dictionary:字典(键值对:[key => value],其中key只能由不可变的数据类型来做

数字运算

注意数据类型的转换,input来的都是字符串

字符串定义

​ 可以用单引号,双引号,三引号来定义字符串,它们之间没有任何区别

单引号(’):按起来比较方便

双引号(”):用来规避字符串中出现的单引号(转义)产生的歧义(它可以自动转义,在路径字符中会造成严重后果

三引号(’’’):三引号的两个作用

​ 程序的注释、函数的注释、类的注释;多行字符串

原始字符串

在字符串前面加上r,便可自动转义,一般用于转义Windows路径,如:

1
a = r"C/user/desktop"

此时,/u和/d不会存在被转义的现象

字符串截取

切片操作可以从一个字符串中截取一个子字符串,用一对方括号[start: end:step​]来表示,start表示子串开始索引,end表示子串结束索引,step表示步长,即每隔step - 1个字符取一个。常见操作如下:提取子串的索引规则是[start,end)

[:] 提取开头到结尾的整个字符串,end不指定代表取到最后

[start:] 从start取到结尾

[:end - 1] 从开头提取到end-1

例如:

1
2
3
4
5
s = '欢迎你来学习Python'
print(S[:]) #取整个字符串
print(s[4:]) #从第四个字取到最后
print(s[:-6]) #从开始取到倒数第七个字符
print(s[::-1]) #字符串全部倒序

step = 1代表挨着取,如果step > 0,代表正着取字符串,如果step < 0,代表倒着截取字符串,正序取的时候start必须从正序开始,逆序取的话start必须从逆序开始。

字符串的函数

len(string):返回字符串长度

replace(old, new, [,max]):把字符串str1替换成str2,如果max指定,则替换不超过max次,如:

1
2
s = 'Welcome to Python'
print('Python', 'Java')

输出:Welcome to Java

split(str = “”):以str为分隔符截取字符串(默认按照空格来拆分,多个空格也只拆分一次),如:

1
2
s = 'Welcome to Python'
print(s.split())

输出:

又如:

1
2
s = 'Welcome#to##Python'
print(s.split())

输出:[‘Welcome’, ‘to’, ‘’, ‘Python’]

去除中间的空元素如下:

1
print(s.replace('#', ' ').split()) #此处为链式调用

strip(str):删除字符串两边str代表的字符,默认代表删除字符串两边的空格,如:

1
2
s = '@@Welcome to Python@@'
print(s.strip('@'))

输出:Welcome to Python

str.islower()/str.isupper():判断字符串是否包含至少一个区分大小写的字符,如果字符串全为小写字母,返回True,反之返回False,如:

1
2
b = 'hello'
print(b.islower())

输出:Ture

upper()/lower():将字符变成全大写/小写

‘,’.join([‘a’, ‘b’, ‘c’]):用逗号将join中的列表的各项连接起来,如下:

1
2
a = ['hello', 'world', 'ok', 'good']
print(','.join(a))

输出:hello,world,ok,good